clasp - Apps Script CLI

Apps Script CLI 또는 claspApps Script 프로젝트를 로컬에서 생성, 수정, 배포할 수 있는 도구입니다. 이를 통해 명령줄에서 Sheets, Docs, Forms, Slides와 같은 제품의 웹 앱 및 부가기능을 만들고 게시할 수 있습니다. script.google.com을 사용하거나 컴퓨터에서 로컬로 Apps Script를 개발하는 두 가지 방법이 있습니다. 후자는 앱 스크립트의 명령줄 도구인 clasp 사용 방법을 알아보겠습니다.

특징

  • 로컬에서 개발. clasp을 사용하면 컴퓨터에 코드를 작성하고 완료되면 Apps Script에 업로드할 수 있습니다. 기존 Apps Script 프로젝트를 다운로드한 다음 로컬에서 수정할 수도 있습니다. 코드가 로컬에 저장되면 git과 같이 자주 사용하는 개발 도구를 사용하여 Apps Script 프로젝트에서 작업할 수 있습니다.
  • 배포 버전 관리 프로젝트의 여러 배포를 생성, 업데이트, 확인합니다.
  • 구조 코드. clasp은 script.google.com의 플랫 프로젝트를 폴더로 자동 변환합니다. 예를 들면 다음과 같습니다.
# On script.google.com:
├── tests/slides.gs
└── tests/sheets.gs

# Locally:
├── tests/
│   ├─ slides.gs
│   └─ sheets.gs

학습할 내용

이 Codelab에서는 clasp을 사용하여 3가지 주요 활동을 실행하는 방법을 보여줍니다.

  • 새 Apps Script 프로젝트를 만드는 방법
  • 기존 프로젝트를 클론, 풀, 푸시하는 방법
  • 스크립트의 배포 관리 방법

CLI 다운로드

Apps Script CLI(clasp)를 사용하려면 Node.js >= v6.0.0을 설치해야 합니다. 여기에서 Node.js를 설치하세요.

노드가 있으면 전역적으로 CLI (clasp)를 설치합니다.

npm i @google/clasp -g

로그인

버클을 사용해 보세요. 기억해야 할 유일한 명령어는 clasp입니다.

clasp

명령줄 도구를 사용하려면 먼저 로그인해야 합니다. 다음 명령어를 실행합니다.

clasp login

이때 Google에 로그인하라는 메시지가 표시됩니다. CLI를 사용하여 만든 모든 프로젝트는 이 Google 계정과 연결됩니다.

독립형 프로젝트 만들기

다음 명령어로 독립형 Google Apps Script 프로젝트를 만듭니다.

mkdir clasp_codelab;
cd clasp_codelab;
clasp create --title "Clasp Codelab";

방금 "clasp_codelab" 폴더에 Apps Script 프로젝트를 만들었습니다.

(선택사항) 기존 프로젝트 클론

Google Slides 부가기능에 대한 컨테이너 바인딩 스크립트를 만들어 보겠습니다.

이렇게 하려면 slides.google.com으로 이동해 새 프레젠테이션을 만듭니다. 프레젠테이션 이름을 "clasp Codelab Test"로 변경합니다. 헤더의 도구에서 스크립트 편집기...를 누릅니다.

script.google.com에서 Apps Script 프로젝트가 열립니다. 프로젝트를 클론하려면 Script ID을 찾아야 합니다. File > Project properties > Info > Script ID로 이동하여 이 값을 찾을 수 있습니다. 이 값은 URL에서도 찾을 수 있습니다. 값을 복사하여 다음 명령어에 붙여넣습니다.

clasp clone <scriptID>

출력은 다음과 같이 표시됩니다.

이제 현재 디렉터리에 프로젝트를 다운로드했습니다. 원하는 편집기를 사용하여 Code.gs의 콘텐츠를 확인합니다(빈 함수).

script.google.com에서 코드 수정

프로젝트를 클론할 수 있게 되었으니 이제 파일을 가져오고 푸시하는 방법을 알아보세요. script.google.com을(를) 통해 클라우드에서 수정하고 컴퓨터로 가져오기 위한 단계를 안내해 드립니다. 클라우드에서 스크립트를 엽니다.

clasp open

이제 온라인 편집기에서 clasp 코드를 사용하여 가져온 코드를 온라인으로 수정해 보겠습니다.

편집기에서 File > New > Script file을 선택하여 새 파일을 만듭니다. 이름(utils/strings)을 입력합니다. 새로 생성된 utils/strings.gs 파일에서 코드를 다음으로 바꿉니다.

var world = "世界";

Code.gs에서 기존 코드를 다음으로 바꿉니다.

function hello() {
  Logger.log("Hello, " + world);
}

모든 파일을 저장해야 합니다. Run > Run function > hello를 눌러 함수를 실행해 봅니다.

View > Logs 페이지로 이동하여 인사말을 확인하세요.

로컬에서 코드 수정

마지막으로 프로젝트를 클론한 명령줄로 돌아갑니다. 이제 코드가 온라인 편집기와 동기화되지 않는 것을 확인할 수 있습니다. 이 문제를 해결하려면 온라인 프로젝트에서 코드를 가져옵니다.

clasp pull

이제 코드로 돌아갑니다. 여기에서 유틸리티를 위한 폴더를 확인할 수 있습니다. clasp CLI는 자동으로 슬래시 문자 /를 로컬 파일 시스템의 폴더로 변환합니다.

원하는 텍스트 편집기에서 util/strings.gs로 이동하여 변수 이름 worldmondo로 바꿉니다. 또한 worldmondo로 바꿔 Code.gs를 업데이트합니다. script.google.com에 업데이트된 코드를 업데이트하려면 수정된 코드를 푸시합니다.

clasp push

이제 모두 완료되었습니다. 이제 script.google.com에 코드가 업데이트됩니다.

clasp를 사용하면 버전 및 배포를 관리할 수 있습니다. 먼저, 여기서는

  • 버전: 스크립트 프로젝트의 "스냅샷"입니다. 버전은 배포에 사용되는 읽기 전용 분기로 간주될 수 있습니다.
  • 배포: 게시된 스크립트 버전 (일반적으로 부가기능 또는 웹 앱)입니다. 버전 번호가 필요합니다.

스크립트 버전을 만들어 보겠습니다.

clasp version "First version"

[version] 대신 만든 로깅된 버전 문자열을 사용하여 스크립트를 배포할 수 있습니다.

clasp deploy 1 "First deployment"

clasp deploy 명령어는 매니페스트를 확인하고 새 버전의 배포를 만듭니다. 이제 코드가 실행 파일로 배포됩니다. 배포 가이드에서 이에 대해 자세히 알아보세요.

Apps Script CLI가 Apps Script 프로젝트 관리를 도와주는 간단한 도구가 되기를 바랍니다.

학습한 내용

  • 새 Apps Script 프로젝트를 만드는 방법
  • 기존 프로젝트를 클론, 푸시, 가져오는 방법
  • 스크립트의 배포 관리 방법

Clasp는 GitHub에서 제공되며 새로운 기능 및 패치에 오신 것을 환영합니다.

새로운 애플리케이션 빌드 작업을 활발하게 하시길 기대하겠습니다.