застежка — интерфейс командной строки сценариев приложений

1. Введение

Инструмент командной строки Apps Script, или clasp , позволяет создавать, редактировать и развертывать проекты Apps Script локально. Он позволяет создавать и публиковать веб-приложения и дополнения для таких продуктов, как Sheets, Docs, Forms и Slides, из командной строки. Существует два способа разработки Apps Script: с помощью script.google.com или локально на вашем компьютере. Мы изучим второй способ, а именно, как использовать clasp — инструмент командной строки для Apps Script.

Функции

  • Разрабатывайте локально. 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

Что вы узнаете

В этом практическом занятии вы узнаете, как реализовать 3 ключевых действия с помощью clasp :

  • Как создавать новые проекты Apps Script
  • Как клонировать, получать и отправлять существующие проекты
  • Как управлять развертыванием ваших скриптов

2. Начало работы

Загрузка интерфейса командной строки

Для работы Apps Script CLI ( clasp ) требуется установленный Node.js. Установить Node.js можно здесь .

После установки Node.js установите CLI глобально (псевдоним clasp ):

npm i @google/clasp -g

3. Включите API Apps Script.

Прежде чем использовать Clasp, необходимо включить API Google Apps Script в среде разработки Apps Script IDE.

4. Вход в систему

Авторизоваться

Давайте попробуем команду clasp ! Единственная команда, которую вам нужно запомнить, это clasp .

clasp

Прежде чем начать использовать инструмент командной строки, необходимо войти в систему. Выполните следующую команду:

clasp login

или при использовании SSH:

clasp login --no-localhost

На этом этапе вам будет предложено войти в Google. Все проекты, созданные с помощью CLI, будут связаны с этой учетной записью Google.

5. Создайте новый проект

Создайте автономный проект

Для начала создайте автономный проект Google Apps Script с помощью следующей команды:

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

Вы только что создали проект Apps Script в папке "clasp_codelab"!

(Дополнительный вариант) Клонировать существующий проект

Давайте попробуем создать скрипт , привязанный к контейнеру, для дополнения Google Slides.

Для этого перейдите на slides.google.com и создайте новую презентацию. Измените название презентации на " clasp Codelab Test ". В строке меню Slides, в меню " Расширения" , выберите " Apps Script ".

Это откроет ваш проект Apps Script по адресу script.google.com .

Создайте новую директорию для вашего проекта и перейдите в неё с cd .

mkdir clasp_codelab_test
cd clasp_codelab_test

Для клонирования проекта нам нужен Script ID ). Этот идентификатор можно найти в URL-адресе проекта Apps Script по адресу /projects/ . Скопируйте значение и вставьте его в следующую команду:

clasp clone <scriptID>

Результат должен выглядеть примерно так...

4e3b128f4dcf6467.gif

Теперь проект загружен в текущую директорию . Используйте свой любимый редактор, чтобы просмотреть содержимое файла Code.gs (пустая функция).

6. Передача и извлечение файлов

Отредактируйте код на script.google.com

Теперь, когда вы умеете клонировать проект, давайте научимся загружать и отправлять файлы. Мы шаг за шагом расскажем вам, как редактировать файлы в облаке через script.google.com и загружать их локально на ваш компьютер. Давайте откроем скрипт в облаке:

clasp open-script

Теперь, когда мы находимся в онлайн-редакторе, мы отредактируем код в режиме онлайн, который позже получим с помощью clasp .

Чтобы создать новый файл Apps Script, слева от редактора, рядом с кнопкой «Файлы» , нажмите «Добавить файл». добавить файл > Скрипт . Введите имя utils/strings . В созданном файле utils/strings.gs замените код следующим:

var world = "世界";

В Code.gs замените существующий код следующим:

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

Вверху нажмите «Сохранить». сохранять .

Чтобы запустить функцию, в верхней части редактора выберите hello из выпадающего списка функций и нажмите «Запустить» .

Приветствие отображается внизу журнала выполнения.

Редактируйте код локально.

Вернемся к командной строке, где мы в последний раз клонировали проект. Вы можете заметить, что наш код теперь не синхронизирован с онлайн-редактором. Чтобы это исправить, давайте скопируем код из нашего онлайн-проекта.

clasp pull

Теперь вернитесь к коду. Вы должны заметить, что там есть папка для наших утилит. Интерфейс командной строки clasp автоматически преобразует символ косой черты / в названия папок в локальной файловой системе.

В вашем любимом текстовом редакторе перейдите в файл util/strings.gs и замените имя переменной world на mondo . Также обновите файл Code.gs, заменив world на mondo . Чтобы обновить код на script.google.com , загрузите отредактированный код.

clasp push

Вот и всё! Ваш код теперь обновлён на script.google.com .

7. Версионирование и развертывание

clasp позволяет управлять версиями и развертываниями. Для начала немного терминологии:

  • Версия : «Снимок» проекта скрипта. Версию можно рассматривать как ветку только для чтения, используемую для развертывания.
  • Развертывание : Опубликованный релиз скриптового проекта (часто в виде дополнения или веб-приложения). Требуется номер версии.

Давайте создадим версию нашего скрипта:

clasp create-version "First version"

Используя созданную нами строку версии, содержащую текст в логе, вместо [version] , мы можем развернуть скрипт:

clasp create-deployment 1 "First deployment"

Команда clasp deploy анализирует ваш манифест и создает новое версионированное развертывание. Ваш код теперь развернут как исполняемый файл. Подробнее об этом можно узнать в руководстве по развертыванию .

8. Вот и всё!

Мы надеемся, что интерфейс командной строки Apps Script станет простым инструментом, который поможет вам управлять проектами Apps Script.

Что мы рассмотрели

  • Как создавать новые проекты Apps Script
  • Как клонировать, отправлять и получать существующие проекты
  • Как управлять развертыванием ваших скриптов

Clasp доступен на GitHub , и мы будем рады новым функциям и исправлениям.

Нам не терпится увидеть, что вы построите!