clasp – Apps Script CLI

1. Einführung

Mit der Apps Script-Kommandozeile oder clasp können Sie Apps Script-Projekte lokal erstellen, bearbeiten und bereitstellen. So lassen sich Webanwendungen und Add-ons für Produkte wie Google Sheets, Docs, Formulare und Präsentationen aus der Kommandozeile erstellen und veröffentlichen. Sie können Apps Script auf script.google.com oder lokal auf Ihrem Computer entwickeln. Hier lernen Sie die zweite Möglichkeit kennen, d. h. die Verwendung von clasp, dem Befehlszeilentool für Apps Script.

Funktionen

  • Lokal entwickeln. clasp ermöglicht es Ihnen, Code auf Ihrem eigenen Computer zu schreiben und anschließend in Apps Script hochzuladen. Auch vorhandene Apps Script-Projekte lassen sich herunterladen und dann lokal bearbeiten. Sobald der Code lokal bereitsteht, können Sie mit den Entwicklungstools Ihrer Wahl (z. B. Git) an Apps Script-Projekten arbeiten.
  • Bereitstellungsversionen verwalten: Sie können mehrere Bereitstellungen Ihres Projekts erstellen, aktualisieren und aufrufen.
  • Code strukturieren: clasp wandelt das unstrukturierte Projekt auf script.google.com automatisch in Ordner um. Beispiel:
# On script.google.com:
├── tests/slides.gs
└── tests/sheets.gs

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

Lerninhalte

In diesem Codelab werden die drei wichtigsten Aktivitäten mit clasp gezeigt:

  • Neue Apps Script-Projekte erstellen
  • Vorhandene Projekte klonen und per Pull und Push übertragen
  • Bereitstellungen von Skripts verwalten

2. Erste Schritte

Befehlszeile herunterladen

Für die Apps Script-Kommandozeile (clasp) muss Node.js installiert sein. Installieren Sie Node.js.

Nachdem Sie Node installiert haben, installieren Sie die CLI global (Alias clasp):

npm i @google/clasp -g

3. Apps Script API aktivieren

Bevor Sie Clasp verwenden können, müssen Sie die Apps Script API in der Apps Script-IDE aktivieren.

4. Anmelden

Anmelden

Probieren Sie clasp aus! Der einzige Befehl, den Sie sich merken müssen, ist clasp.

clasp

Bevor wir das Befehlszeilentool verwenden, müssen wir uns anmelden. Führen Sie folgenden Befehl aus:

clasp login

oder bei Verwendung von SSH:

clasp login --no-localhost

Jetzt werden Sie aufgefordert, sich bei Google anzumelden. Alle Projekte, die Sie mit der Kommandozeile erstellen, sind diesem Google-Konto zugeordnet.

5. Neues Projekt erstellen

Eigenständiges Projekt erstellen

Als Erstes erstellen Sie ein eigenständiges Google Apps Script-Projekt mit dem folgenden Befehl:

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

Sie haben soeben ein Apps Script-Projekt im Ordner „clasp_codelab“ erstellt.

Optionale Alternative: Vorhandenes Projekt klonen

Jetzt erstellen wir ein containergebundenes Skript für ein Add-on für Google Präsentationen.

Rufen Sie dazu slides.google.com auf und erstellen Sie eine neue Präsentation. Ändern Sie den Namen der Präsentation in clasp Codelab Test. Wählen Sie in der Menüleiste von Google-Präsentationen im Menü Erweiterungen die Option Apps Script aus.

Dadurch wird Ihr Apps Script-Projekt auf script.google.com geöffnet.

Erstellen Sie ein neues Verzeichnis für Ihr Projekt und cd.

mkdir clasp_codelab_test
cd clasp_codelab_test

Zum Klonen eines Projekts benötigen wir die Script ID. Sie finden diese ID in der Apps Script-Projekt-URL nach /projects/. Kopieren Sie den Wert und fügen Sie ihn in den folgenden Befehl ein:

clasp clone <scriptID>

Die Ausgabe sollte so aussehen:

4e3b128f4dcf6467.gif

Sie haben das Projekt jetzt in Ihr aktuelles Verzeichnis heruntergeladen. Rufen Sie den Inhalt von Code.gs (eine leere Funktion) im Editor Ihrer Wahl auf.

6. Dateien per Pull und Push übertragen

Code auf script.google.com bearbeiten

Nachdem Sie gelernt haben, wie Sie ein Projekt klonen, erfahren Sie nun, wie Sie Dateien per Pull und Push übertragen. Wir erklären Ihnen Schritt für Schritt, wie Sie Dateien in der Cloud über script.google.com bearbeiten und mithilfe des Pull-Vorgangs auf Ihren lokalen Computer herunterladen. Öffnen Sie zuerst das Skript in der Cloud:

clasp open-script

Im Onlineeditor bearbeiten Sie einen Teil des Codes, der dann später mit clasp abgerufen werden soll.

Wenn Sie eine neue Apps Script-Datei erstellen möchten, klicken Sie links im Editor neben Dateien auf „Datei hinzufügen“ Datei hinzufügen > Script. Geben Sie den Namen utils/strings ein. Ersetzen Sie in der neu erstellten Datei utils/strings.gs den Code durch Folgendes:

var world = "世界";

Ersetzen Sie den vorhandenen Code in Code.gs durch Folgendes:

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

Klicken Sie oben auf „Speichern“ (Speichern).

Um die Funktion auszuführen, wählen Sie oben im Editor hello aus der Drop-down-Liste für Funktionen aus und klicken Sie auf Ausführen.

Die Begrüßung wird unten im Ausführungsprotokoll angezeigt.

Code lokal bearbeiten

Kehren Sie nun zu der Befehlszeile zurück, in der zuletzt das Projekt geklont wurde. Wie Sie sehen, ist der Code jetzt nicht mehr mit dem Onlineeditor synchron. Um dies zu beheben, rufen Sie den Code mit einem Pull-Vorgang aus dem Onlineprojekt ab.

clasp pull

Kehren Sie jetzt zum Code zurück. Es sollte ein Ordner mit dem Namen „utils“ angezeigt werden. Die clasp-Befehlszeile wandelt den Schrägstrich / automatisch in Ordner im lokalen Dateisystem um.

Gehen Sie in Ihrem bevorzugten Texteditor zu util/strings.gs und ersetzen Sie den Variablennamen world durch mondo. Aktualisieren Sie auch Code.gs, indem Sie world durch mondo ersetzen. Damit der aktualisierte Code auf script.google.com übernommen wird, führen Sie einen Push-Vorgang für den bearbeiteten Code aus.

clasp push

Webseite. Ihr Code wurde auf script.google.com aktualisiert.

7. Versionsverwaltung und Bereitstellung

Mit clasp können Sie Versionen und Bereitstellungen verwalten. Hier zuerst eine Erläuterung der Begriffe:

  • Version: Eine "Momentaufnahme" eines Skriptprojekts. Eine Version kann als ein schreibgeschützter Zweig für Bereitstellungen betrachtet werden.
  • Bereitstellung: Eine veröffentlichte Version eines Skriptprojekts (häufig in Form eines Add-ons oder einer Webanwendung). Erfordert eine Versionsnummer.

Erstellen Sie eine Version des Skripts:

clasp create-version "First version"

Nun kann das Skript mit der Zeichenfolge für die protokollierte Version, die anstelle von [version] erstellt wurde, bereitgestellt werden:

clasp create-deployment 1 "First deployment"

Mit dem Befehl clasp deploy wird das Manifest geprüft und eine neue versionierte Bereitstellung erstellt. Der Code wird jetzt als ausführbarer Code bereitgestellt. Weitere Informationen dazu finden Sie im Bereitstellungshandbuch.

8. Geschafft!

Wir hoffen, dass die Apps Script-Kommandozeile ein einfaches Tool zum Verwalten von Apps Script-Projekten ist.

Behandelte Themen

  • Neue Apps Script-Projekte erstellen
  • Vorhandene Projekte klonen und per Push und Pull übertragen
  • Bereitstellungen von Skripts verwalten

Clasp ist auf GitHub verfügbar, wo auch neue Funktionen und Patches bereitgestellt werden können.

Wir sind gespannt, was Sie damit entwickeln.