Eine Einstellung, mit der Cloud Build Django-Projekte automatisch für App Engine bereitstellen kann. cloudbuild.yaml Die Einstellungen scheinen keine japanischen Informationen zu enthalten, daher werde ich sie weitergeben.
Führen Sie [Standardbereitstellungsmethode] aus (https://cloud.google.com/source-repositories/docs/quickstart-triggering-builds-with-source-repositories) + Verwenden Sie die folgende Datei cloudbuild.yaml.
cloudbuild.yaml
steps:
#Erstellen Sie eine Umgebung, in der Django für Collectstatic ausgeführt werden kann
- name: 'python:3'
entrypoint: python3
args: ['-m', 'venv', '/workspace/venv']
- name: 'python:3'
entrypoint: "/workspace/venv/bin/pip"
args: ['install', '-r', 'requirements.txt']
#Sammeln Sie statische Daten mit dem erstellten Venv (Test usw. kann ausgeführt werden)
- name: 'python:3'
entrypoint: "/workspace/venv/bin/python"
args: ['./manage.py', 'collectstatic', '--noinput']
#In App Engine bereitstellen
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy"]
timeout: "1200s"
Im Bereitstellungsschritt erstellen wir ein Venv und führen dort Collectstatic oder Tests durch. Die einzige Einschränkung ist, dass Cloud Build nur die Informationen in "/ workspace /" für den nächsten Schritt übernimmt.
Mit den obigen Einstellungen für cloudbuild.yaml können Sie eine gute Bereitstellung durchführen.
Wenn Sie [Link GitHub und Cloud Build] ausführen (https://cloud.google.com/source-repositories/docs/mirroring-a-github-repository), wird es bei jedem Push an GitHub automatisch bereitgestellt. Es wird empfohlen, da es auf eingestellt werden kann.
Wenn Sie Fragen, Fragen oder Verbesserungsvorschläge zum ersten Beitrag haben, können Sie diese gerne kommentieren.
Recommended Posts