Google Apps Script의 웹 애플리케이션을 URL을 변경하지 않고 최신 스크립트로 배포하고 싶습니다.

3761 단어 GoogleAppsScript

개요



이 게시물에서는 Google Apps Script의 Web Apps에 대해 URL을 변경하지 않고 최신 스크립트를 반영하는 방법을 소개합니다. 여기에서는 새로운 IDE를 사용하여 설명합니다.

2021년 3월 15일부터 Google Apps Script 프로젝트에서 여러 배포 ID를 사용할 수 있습니다. Ref 예를 들어, Web Apps는 지금까지 최신 스크립트를 Web Apps에 반영하기 위해 새로운 버전으로 재배포하여 사용해 왔지만 지금까지와 같이 Web Apps 를 재배포하면 deployment ID가 변경되기 때문에 URL (배포할 때마다 https://script.google.com/macros/s/###/exec###가 매번 변경됩니다.) 자체가 변경됩니다.

최근, 이러한 문제에 관한 문의, 즉, URL을 바꾸지 않고 최신의 스크립트를 Web Apps에 반영시키고 싶다고 하는 내용의 문의가 증가해 왔으므로, 이쪽에서도 그 회피책에 대해서 소개하겠습니다.

흐름



URL을 변경하지 않고 최신 스크립트를 Web Apps에 반영하기 위한 흐름은 아래와 같습니다.

  • 새 Google Apps Script 프로젝트를 만듭니다. 이 경우 standalone type, container-bound script type을 모두 사용할 수 있습니다. 작성한 GAS 프로젝트의 스크립트 편집기에 다음 스크립트를 복사하여 붙여넣고 저장합니다.
    function doGet() {
      return ContentService.createTextOutput("sample1");
    }
    

  • Web Apps를 다음 조건으로 배포합니다. 여기에서 Web Apps URL을 복사해 둡니다.
  • Execute as: Me
  • Who has access: Anyone



  • 배포된 Web Apps에 curl 명령을 사용하여 동작을 테스트합니다. 배포 시 복사한 URL을 사용합니다.
    $ curl -L "https://script.google.com/macros/s/###/exec"
    
  • sample1 가 리턴되면 동작 확인 완료입니다.


  • 그런 다음 Web Apps 스크립트를 다음과 같이 변경합니다.
    function doGet() {
      return ContentService.createTextOutput("sample2");
    }
    

  • 아래 그림과 같이 Web Apps를 업데이트합니다.


  • 스크립트 편집기에서 "Deploy"-> "Manage deployments"에서 "New deployment"대화 상자를 엽니 다.
  • 처음 배포한 버전을 엽니다. 그 상황에서 연필 마크를 클릭하여 편집 상태로 만듭니다.
  • "version"을 "New version"으로 설정합니다. (여기가 포인트입니다.) "description"을 변경하는 경우 여기에서 변경할 수 있습니다.
  • "Deploy"버튼을 누릅니다. 이렇게하면 변경 사항이 저장됩니다.


  • 다시 curl 명령을 사용하여 테스트합니다. 이 때의 커맨드는 상기와 같은 커맨드로 실시합니다.
  • sample2 가 돌려주어집니다. 즉, Web Apps URL을 변경하지 않고 (deployment ID를 변경하지 않고) 최신 스크립트를 Web Apps에 반영 할 수있었습니다.


  • 영어 버전은 여기입니다.

    참고


  • Create and manage deployments
  • Web Apps
  • 좋은 웹페이지 즐겨찾기