App Engine-Bereitstellungen mit Cloud Build automatisieren
Diese Kurzanleitung zeigt, wie Sie eine Anwendung, die in Cloud Source Repositories gespeichert ist, nach einem neuen Commit automatisch in App Engine bereitstellen können.
Hinweise
- Führen Sie die Schritte unter
Code-Repository in Cloud Source Repositories erstellen aus.
Nach Abschluss dieser Kurzanleitung haben Sie eine Anwendung, die Sie in App Engine bereitstellen können.
Enable the App Engine Admin, Cloud Build APIs.
Dem Cloud Build-Dienstkonto Zugriff auf App Engine gewähren
Cloud Build verwendet ein Dienstkonto, um Ihren Code bereitzustellen. Die Standardberechtigungen für dieses Konto lassen bestimmte Aktionen nicht zu, wie die Bereitstellung in App Engine.
Aktivieren Sie Ihr Dienstkonto für die Bereitstellung in App Engine. Dazu erteilen Sie dem Konto zusätzliche Identity and Access Management-Rollen (IAM):
Öffnen Sie in der Google Cloud Console die Seite "Settings" (Einstellungen) von Cloud Build:
Zur Seite mit den Cloud Build-Einstellungen
Sie sehen die Seite Dienstkontoberechtigungen:
Setzen Sie den Status der Rolle App Engine Admin (App Engine-Administrator) auf Aktivieren.
Anwendung bereitstellen
Wechseln Sie in einem Terminalfenster zum Verzeichnis mit dem Repository:
cd hello-world
Stellen Sie die Beispielanwendung bereit:
gcloud app deploy app.yaml
Prüfen Sie, ob Ihre Anwendung ausgeführt wird:
gcloud app browse
Wenn Ihre Anwendung ausgeführt wird, zeigt der Browser die Mitteilung
Hello, World!
an.
Datei "cloudbuild.yaml" erstellen
Wechseln Sie in einem Terminalfenster zum Verzeichnis mit dem Repository:
cd hello-world
Erstellen Sie mit einem Texteditor eine Datei namens
cloudbuild.yaml
und fügen Sie die folgenden Konfigurationsdaten ein:steps: - name: "gcr.io/cloud-builders/gcloud" args: ["app", "deploy"] timeout: "1600s"
Datei "cloudbuild.yaml" dem Repository hinzufügen
Fügen Sie dem Repository
cloudbuild.yaml
hinzu:git add .
Führen Sie für die Datei ein Commit mit einem Kommentar durch, der den Verlauf dieser Aktion beschreibt:
git commit -m "Add cloudbuild.yaml file"
Fügen Sie den Inhalt des lokalen Git-Repositorys mit dem Befehl
git push
zu Cloud Source Repositories hinzu:git push origin master
Build-Trigger erstellen
Öffnen Sie in der Google Cloud Console unter „Cloud Build“ die Seite Trigger.
Wenn Ihr Google Cloud-Projekt nicht ausgewählt ist, klicken Sie auf Projekt auswählen und anschließend auf den Namen Ihres Google Cloud-Projekts.
Klicken Sie auf Trigger erstellen.
Die Seite Trigger erstellen wird geöffnet.
Füllen Sie die folgenden Optionen aus:
- Geben Sie im Feld Name den Wert
app-engine-test
ein. - Wählen Sie unter Ereignis Push to a branch.
- Wählen Sie unter Quelle
hello-world
als Repository und^master$
als Branch aus. - Unter Konfiguration wählen Sie die Konfigurationsdatei (yaml oder json) von Cloud Build.
- Geben Sie im Feld Speicherort der Cloud Build-Konfigurationsdatei
cloudbuild.yaml
nach/
ein.
- Geben Sie im Feld Name den Wert
Klicken Sie auf Erstellen, um den Build-Trigger zu speichern.
Änderung per Push zur Anwendung übertragen
Verwenden Sie in einem Terminalfenster einen Texteditor, um die Datei
main.py
durch Einfügen des folgenden Codes zu aktualisieren:#!/usr/bin/env python import webapp2 class MainHandler(webapp2.RequestHandler): def get(self): self.response.write('I update automatically!') app = webapp2.WSGIApplication([ ('/', MainHandler) ], debug=True)
Fügen Sie die Datei zu Git hinzu.
git add .
Führen Sie für die Datei ein Commit mit einem Kommentar durch, der den Verlauf dieser Aktion beschreibt:
git commit -m "Update app to demonstrate build triggers"
Fügen Sie den Inhalt des lokalen Git-Repositorys mit dem Befehl
git push
zu Cloud Source Repositories hinzu:git push origin master
Build während der Bearbeitung ansehen
Öffnen Sie in der Google Cloud Console unter „Cloud Build“ die Seite Trigger.
Wenn Ihr Google Cloud-Projekt nicht ausgewählt ist, klicken Sie auf Projekt auswählen und anschließend auf den Namen Ihres Google Cloud-Projekts.
Klicken Sie auf Verlauf.
Eine Liste aller Builds wird geöffnet. Oben in der Liste befindet sich ein neuer Eintrag. Dieser stellt den Build dar, der gestartet wurde, nachdem Sie Ihre Änderung per Push auf Cloud Source Repositories angewendet haben. Wenn der Build bereit ist, wird neben dem Build-Eintrag ein grünes Häkchen angezeigt.
Anwendung erneut testen
Öffnen Sie in einem Terminalfenster Ihre Anwendung:
gcloud app browse
Der Browser zeigt nun die Meldung I update automatically!
an.
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.
Build-Trigger löschen
Öffnen Sie in der Google Cloud Console unter „Cloud Build“ die Seite Trigger.
Wenn Ihr Google Cloud-Projekt nicht ausgewählt ist, klicken Sie auf Projekt auswählen und anschließend auf den Namen Ihres Google Cloud-Projekts.
Klicken Sie in derselben Zeile wie der Trigger, den Sie löschen möchten, auf More more_vert und dann auf Delete.
Repository löschen
Öffnen Sie in der Google Cloud Console die Seite Alle Repositories für Cloud Source Repositories.
Halten Sie den Zeiger über das Repository, das Sie löschen möchten, und klicken Sie auf Einstellungen settings.
Die Seite Allgemeine Einstellungen wird geöffnet.
Klicken Sie auf Dieses Repository löschendelete.
Das Dialogfeld Repository entfernen wird geöffnet.
Geben Sie den Namen des Repositorys ein, das Sie löschen möchten.
Klicken Sie auf Löschen.
Nächste Schritte
- Weitere Informationen zu Cloud Build