1. 소개
Apps Script CLI(clasp
)는 Apps Script 프로젝트를 로컬에서 생성, 수정, 배포할 수 있는 도구입니다. 이 도구를 사용하면 명령줄에서 Sheets, Docs, Forms, Slides와 같은 제품을 위한 웹 앱과 부가기능을 만들고 게시할 수 있습니다. Apps 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 프로젝트를 만드는 방법
- 기존 프로젝트를 클론, 가져오기, 푸시하는 방법
- 스크립트 배포를 관리하는 방법
2. 시작하기
CLI 다운로드
Apps Script CLI (clasp
)를 사용하려면 Node.js v6.0.0 이상이 설치되어 있어야 합니다. 여기에서 Node.js를 설치합니다.
노드가 있으면 CLI를 전역적으로 설치합니다 (별칭 clasp).
npm i @google/clasp -g
3. 로그인
로그인
버클을 사용해 보자! 기억해야 하는 유일한 명령어는 clasp
입니다.
clasp
명령줄 도구를 사용하기 전에 로그인해야 합니다. 다음 명령어를 실행합니다.
clasp login
또는 SSH를 사용하는 경우:
clasp login --no-localhost
이때 Google에 로그인하라는 메시지가 표시됩니다. CLI로 만든 모든 프로젝트는 이 Google 계정과 연결됩니다.
4. 새 프로젝트 만들기
독립형 프로젝트 만들기
다음 명령을 사용하여 독립형 Google Apps Script 프로젝트를 만들어 시작합니다.
mkdir clasp_codelab;
cd clasp_codelab;
clasp create --title "Clasp Codelab" --type standalone;
'clasp_codelab' 폴더에 Apps Script 프로젝트가 생성되었습니다.
(대안) 기존 프로젝트 클론
Google Slides 부가기능을 위해 container-bound 스크립트를 만들어 보겠습니다.
이렇게 하려면 slides.google.com으로 이동하여 새 프레젠테이션을 만듭니다. 프레젠테이션 이름을 'clasp Codelab Test'로 변경합니다. 헤더의 도구에서 스크립트 편집기...를 누릅니다.
그러면 script.google.com에서 Apps Script 프로젝트가 열립니다. 프로젝트를 클론하려면 Script ID
가 필요합니다. 이 ID는 Apps Script 프로젝트 URL의 /projects/
뒤에서 찾을 수 있습니다. 값을 복사하여 다음 명령어에 붙여넣습니다.
clasp clone <scriptID>
출력은 다음과 같이 표시됩니다.
이제 현재 디렉터리에 프로젝트를 다운로드했습니다. 원하는 편집기를 사용하여 빈 함수인 Code.gs
의 콘텐츠를 확인합니다.
5. 가져오기 및 파일 푸시
Script.google.com에서 코드 수정
이제 프로젝트를 클론할 수 있으므로 파일을 가져오고 내보내는 방법을 알아보겠습니다. script.google.com
를 통해 클라우드에서 수정하고 로컬로 가져오는 단계를 안내합니다. 클라우드에서 스크립트를 열어 보겠습니다.
clasp open
이제 온라인 편집기가 있으므로 나중에 clasp
를 사용하여 가져올 몇 가지 코드를 온라인에서 수정합니다.
새 Apps Script 파일을 만들려면 편집기 왼쪽에서 Files 옆의 파일 추가 를 클릭합니다. > 스크립트를 참고하세요. 이름 utils/strings
을 입력합니다. 새로 만든 파일 utils/strings.gs
에서 코드를 다음으로 바꿉니다.
var world = "世界";
Code.gs
에서 기존 코드를 다음으로 바꿉니다.
function hello() {
Logger.log("Hello, " + world);
}
상단에서 저장 을 클릭합니다.
함수를 실행하려면 편집기 상단의 함수 드롭다운 목록에서 hello
를 선택하고 실행을 클릭합니다.
인사말은 실행 로그 하단에 표시됩니다.
로컬에서 코드 수정
마지막으로 프로젝트를 클론한 명령줄로 돌아갑니다. 이제 코드가 온라인 편집기와 동기화되지 않을 수 있습니다. 이 문제를 해결하기 위해 온라인 프로젝트에서 코드를 가져와 보겠습니다.
clasp pull
이제 코드로 돌아갑니다. 유틸리티 폴더가 있습니다. clasp
CLI는 슬래시 문자 /
를 로컬 파일 시스템의 폴더로 자동으로 변환합니다.
원하는 텍스트 편집기에서 util/strings.gs
로 이동하여 변수 이름 world
을 mondo
로 바꿉니다. 또한 world
를 mondo
로 바꿔 Code.gs를 업데이트합니다. script.google.com
에 업데이트된 코드를 업데이트하려면 수정된 코드를 푸시하세요.
clasp push
이상입니다 이제 코드가 script.google.com
에 업데이트됩니다.
6. 버전 관리 및 배포
clasp
를 사용하면 버전 및 배포를 관리할 수 있습니다. 먼저 몇 가지 용어를 살펴보겠습니다.
- 버전: '스냅샷' 스크립트 프로젝트의 실행일 수도 있습니다 버전은 배포에 사용되는 읽기 전용 브랜치로 간주될 수 있습니다.
- 배포: 스크립트 프로젝트의 게시된 출시 버전입니다 (종종 부가기능 또는 웹 앱). 버전 번호가 필요합니다.
스크립트 버전을 만들어 보겠습니다.
clasp version "First version"
[version]
대신 만든 로깅된 버전 문자열을 사용하여 스크립트를 배포할 수 있습니다.
clasp deploy 1 "First deployment"
clasp deploy
명령어는 매니페스트를 확인하고 새 버전이 지정된 배포를 만듭니다. 이제 코드가 실행 파일로 배포됩니다. 자세한 내용은 배포 가이드를 참고하세요.
7. 작업이 끝났습니다.
Apps Script CLI가 Apps Script 프로젝트 관리에 도움이 되는 간단한 도구가 되기를 바랍니다.
학습한 내용
- 새 Apps Script 프로젝트를 만드는 방법
- 기존 프로젝트를 클론, 푸시, 가져오는 방법
- 스크립트 배포를 관리하는 방법
Clasp는 GitHub에서 사용할 수 있으며 새로운 기능과 패치를 사용할 수 있습니다.
앞으로 제작하실 멋진 프로토타입을 기대하겠습니다.