Auf dieser Seite wird erläutert, wie Sie Informationen zu Cloud Build aufrufen
Builds mit der Google Cloud Console, dem gcloud
-Befehlszeilentool
Cloud Build API
Hinweise
Wenn Sie die Befehlszeilenbeispiele in dieser Anleitung verwenden möchten, installieren Sie das gcloud
-Befehlszeilentool.
Build-Ergebnisse ansehen
Zum Aufrufen von Build-Logs benötigen Hauptkonten zusätzlich zu den Cloud Build-IAM-Berechtigungen eine der folgenden IAM-Rollen:
Wenn sich die Build-Logs im standardmäßigen Cloud Storage-Bucket befinden, weisen Sie die Rolle Projekt > Betrachter zu.
Wenn sich die Build-Logs in einem benutzerdefinierten Cloud Storage-Bucket befinden, weisen Sie die Rolle Storage-Objekt-Betrachter zu.
Weitere Informationen zu den erforderlichen Berechtigungen zum Aufrufen von Build-Logs in Cloud Build, GitHub oder GitHub Enterprise nach dem Erstellen des Triggers finden Sie unter Build-Logs ansehen.
Console
In der Google Cloud Console können Sie im Menü Build-Verlauf Informationen über Build-Status (Erfolg oder Fehler), Quelle, Zeit, Bilder und mehr zu erstellen.
Öffnen Sie zum Anzeigen des Menüs Build-Verlauf die Seite Build-Verlauf in der Google Cloud Console:
Die Seite Build-Verlauf wird eingeblendet. Sie enthält eine Liste Ihrer letzten Builds.
Wenn Sie Builds nach Region filtern möchten, wählen Sie oben auf der Seite im Drop-down-Menü Region die Region aus, nach der Sie filtern möchten.
Sie können Builds auch über das Textfeld Builds filtern oben auf der Seite oder durch manuelle Eingabe einer Abfrage filtern.
Verwenden Sie die Spaltenauswahl
, um weitere Spalten wie Triggerbeschreibung und Artefakte zu sehen.Wenn Sie Details zu einem bestimmten Build aufrufen möchten, klicken Sie auf Build-Verlauf und anschließend auf einen bestimmten Build. Die Seite Build-Details wird mit der Build-Zusammenfassung für Ihren Build angezeigt. Die Build-Zusammenfassung umfasst:
- Build-Log ist das Log Ihres Builds.
- Ausführungsdetails beschreiben die Details Ihres Builds einschließlich der Umgebungsvariablen und Substitutionen.
- Build-Artefakte sind die Artefakte Ihres Builds wie Container-Images, Build-Logs oder Binärdateien.
Sie können das Build-Log oder die Ausführungsdetails für eine bestimmte indem Sie links in der Tabelle Steps (Schritte) den entsprechenden Schritt auswählen.
gcloud
Der Befehl gcloud builds list
zeigt Ihre gesamten Builds an.
Führen Sie den folgenden Befehl aus, um sich Ihre Builds anzusehen:
gcloud builds list
Die Ausgabe sollte in etwa so aussehen:
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
3a2055bc-ccbd-4101-9434-d376b88b8940 2018-02-16T18:33:26+00:00 23S gs://gcb-docs-project_cloudbuild/source/1518806004.25-db1e250a7b7f496eb8242bfee5ac308e.tgz us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image (+1 more) SUCCESS
900704ca-7a0c-4569-ac08-884593c19aac 2018-02-16T18:32:32+00:00 gs://gcb-docs-project_cloudbuild/source/1518805951.23-03dd53d16f684c568fa2bb7ff7ebda06.tgz - FAILURE
021f9ede-ddaa-4cfb-8988-60142b015ebd 2018-02-14T15:48:44+00:00 10S gs://gcb-docs-project_cloudbuild/source/1518623322.56-9cd088ffc1e04f5aa6040728772d0c2a.tgz - SUCCESS
8126d538-3c43-4304-a14c-33aceec8cb97 2018-02-14T15:46:13+00:00 10S gs://gcb-docs-project_cloudbuild/source/1518623172.09-327c02585a4e44e782ac97dd80d5a5d5.tgz us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image (+1 more) SUCCESS
Führen Sie den folgenden Befehl aus, um sich Details zu einem bestimmten Build anzusehen:
gcloud builds describe [BUILD_ID]
Dabei ist [BUILD_ID] die ID des Builds, für den Sie Details abrufen möchten.
Die Ausgabe sollte in etwa so aussehen:
createTime: '2018-02-22T14:49:54.066666971Z'
finishTime: '2018-02-22T14:50:05.463758Z'
id: bcdb9c48-d92c-4489-a3cb-08d0f0795a0b
images:
- us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
logUrl: https://console.cloud.google.com/cloud-build/builds/bcdb9c48-d92c-4489-a3cb-08d0f0795a0b?project=gcb-docs-project
logsBucket: gs://404889597380.cloudbuild-logs.googleusercontent.com
projectId: gcb-docs-project
results:
buildStepImages:
- sha256:a4363bc75a406c4f8c569b12acdd86ebcf18b6004b4f163e8e6293171462a79d
images:
- digest: sha256:1b2a237e74589167e4a54a8824f0d03d9f66d3c7d9cd172b36daa5ac42e94eb9
name: us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
pushTiming:
endTime: '2018-02-22T14:50:04.731919081Z'
startTime: '2018-02-22T14:50:00.874058710Z'
- digest: sha256:1b2a237e74589167e4a54a8824f0d03d9f66d3c7d9cd172b36daa5ac42e94eb9
name: us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image:latest
pushTiming:
endTime: '2018-02-22T14:50:04.731919081Z'
startTime: '2018-02-22T14:50:00.874058710Z'
source:
storageSource:
bucket: gcb-docs-project_cloudbuild
generation: '1519310993665963'
object: source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz
sourceProvenance:
fileHashes:
gs://gcb-docs-project_cloudbuild/source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz#1519310993665963:
fileHash:
- value: -aRYrWp2mtfKhHSyWn6KNQ==
resolvedStorageSource:
bucket: gcb-docs-project_cloudbuild
generation: '1519310993665963'
object: source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz
startTime: '2018-02-22T14:49:54.966308841Z'
status: SUCCESS
steps:
- args:
- build
- --no-cache
- -t
- us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
- .
name: gcr.io/cloud-builders/docker
status: SUCCESS
timing:
endTime: '2018-02-22T14:50:00.813257422Z'
startTime: '2018-02-22T14:50:00.102600442Z'
timeout: 600s
timing:
BUILD:
endTime: '2018-02-22T14:50:00.873604173Z'
startTime: '2018-02-22T14:50:00.102589403Z'
FETCHSOURCE:
endTime: '2018-02-22T14:50:00.087286880Z'
startTime: '2018-02-22T14:49:56.962717504Z'
PUSH:
endTime: '2018-02-22T14:50:04.731958202Z'
startTime: '2018-02-22T14:50:00.874057159Z'
Schrittstatus und Build-Status
Sobald ein Build abgeschlossen ist, stellt Cloud Build einen allgemeinen status
für den Build und einen status
für jeden einzelnen Build-Schritt bereit.
In der folgenden Tabelle sind die Status aufgeführt, die vorkommen können, wenn ein Build oder ein Schritt erfolgreich ist, das Zeitlimit überschreitet oder fehlschlägt:
Ereignis | Build-Status | Schrittstatus |
---|---|---|
Build erfolgreich | SUCCESS
| Alle Schritte sind mit SUCCESS markiert. |
Build ist erfolgreich, aber fehlgeschlagene Schritte sind zulässig | SUCCESS
|
|
Build schlägt fehl | FAILURE
|
|
Build wird vom Nutzer abgebrochen | CANCELLED
|
|
Build überschreitet Zeitlimit | TIMEOUT |
|
Schritt überschreitet Zeitlimit | FAILED |
|
Führen Sie den Befehl gcloud builds describe
aus, damit Ihnen der Status für die einzelnen Schritte und für den Build angezeigt wird:
gcloud builds describe [BUILD_ID]
Dabei ist [BUILD_ID] die ID des Builds.
Das folgende Snippet zeigt den schrittspezifischen Status aus einem Build, wenn ein Schritt das Zeitlimit überschreitet:
status: FAILURE
steps:
- args:
- sleep
- '60'
id: long sleep
name: alpine
status: CANCELLED
timing:
endTime: '2018-02-26T14:09:18.531368493Z'
startTime: '2018-02-26T14:09:11.023235026Z'
waitFor:
- '-'
- args:
- sleep
- '3'
id: shorty
name: alpine
status: SUCCESS
timeout: 60s
timing:
endTime: '2018-02-26T14:09:15.497724138Z'
startTime: '2018-02-26T14:09:11.023676903Z'
waitFor:
- '-'
- args:
- sleep
- '60'
name: alpine
status: TIMEOUT
timeout: 3s
timing:
endTime: '2018-02-26T14:09:18.527488475Z'
startTime: '2018-02-26T14:09:15.497736775Z'
waitFor:
- shorty
- args:
- 'false'
name: alpine
status: QUEUED
waitFor:
- long sleep
timeout: 60s
Build-Ergebnisse mithilfe von Abfragen filtern
Um Informationen zu Builds zu finden, die bestimmten Kriterien entsprechen, geben Sie einen Abfragestring im Feld Builds filtern auf der Seite Build-Verlauf in der Google Cloud Console ein. Sie können damit beispielsweise Builds abfragen, die fehlgeschlagen sind (und im Statusfeld den Wert FAILURE
enthalten), nach einem bestimmten Zeitpunkt erstellt wurden, getaggt sind usw.
Unterstützte Felder für Abfragen
Sie können Builds anhand der Werte der folgenden Felder abfragen:
status
build_id
trigger_id
source.storage_source.bucket
source.storage_source.object
source.repo_source.repo_name
source.repo_source.branch_name
source.repo_source.tag_name
source.repo_source.commit_sha
source_provenance.resolved_repo_source.commit_sha
results.images.name
results.images.digest
options.requested_verify_option
tags
images
create_time
start_time
finish_time
Felder mit einem Punkt (.
) sind untergeordnete Felder.
Abfragestring erstellen
Abfragestrings sehen generell so aus:
field="value"
Benutzen Sie Punkte, um ein untergeordnetes Feld zu definieren, z. B. results.images.name
. Abfragen unterstützen die Vergleichsoperatoren =
und !=
sowie >
, >=
, <
und <=
für Felder mit numerischen Werten (wie create_time
).
Sie können kumulierende Abfragen erstellen, indem Sie die booleschen Ausdrücke AND
und OR
verwenden.
Beispiele für häufige Abfragen
So fragen Sie alle erfolgreichen Builds ab:
status="SUCCESS"
So fragen Sie alle Builds ab, die noch nicht abgeschlossen sind:
status="QUEUED" OR status="WORKING"
So fragen Sie Builds ab, die bei Fertigstellung einen angegebenen Image-Namen haben:
(status="SUCCESS" OR status="FAILURE") AND \
results.images.name="us-east1-docker.pkg.dev/my-project/my-image"
So rufen Sie alle Builds mit dem Tag "prod"
ab:
tags="prod"
So fragen Sie Builds ab, die als überprüft markiert wurden:
options.requested_verify_option="VERIFIED"
So fragen Sie Builds ab, die aus einer Quelle in Cloud Storage (statt aus einem Cloud Source Repository) stammen:
source.storage_source.bucket!=""
So fragen Sie Builds ab, die bei Fertigstellung ein angegebenes Digest haben:
results.images.digest="sha256:6c7147fe4c813845ac2a9aa6f937bb272b68784f647c4f64c7325723c7245c88"
So fragen Sie Builds ab, die nach einem bestimmten Zeitpunkt gestartet und vor einem bestimmten Zeitpunkt beendet wurden (UTC-Zeitzone):
create_time>"2016-10-12T18:43:49+00:00" AND finish_time<"2016-10-13T18:43:49+00:00"
Build-Ergebnisse mithilfe von Tags filtern
Mit Tags in Ihren Konfigurationsdateien können Sie Builds in Gruppen organisieren und filtern. Sie können Strings in Tags angeben, z. B. "prod"
oder "test"
.
Für Tags gelten folgende Einschränkungen:
- Tags dürfen maximal 128 Zeichen lang sein.
- Sie können maximal 64 Tags pro Build definieren.
- Tags können Buchstaben, Zahlen und Unterstriche an beliebiger Position des Strings enthalten.
- Tags können Punkte und Bindestriche an jeder Position außer der ersten Position des Strings enthalten.
So fügen Sie Tags zu Ihrem Build hinzu:
Fügen Sie in Ihre Build-Konfigurationsdatei das Feld
tags
ein:steps: - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '-t', 'us-east1-docker.pkg.dev/$PROJECT_ID/cb-demo-img', '.' ] images: - 'us-east1-docker.pkg.dev/$PROJECT_ID/cb-demo-img' tags: - 'test1' - 'test2'
Verwenden Sie die Option
--filter
ingcloud builds list
, um getaggte Builds in Ihrem Cluster anzuzeigen Sie können Builds filtern, wenn Sie ein einzelnes Tag oder mehrere Tags angeben.Wenn Sie Builds nach einem einzelnen Tag filtern möchten, geben Sie das Tag als String im Feld
tags
an. Mit dem folgenden Befehl werden alle mit'test1'
getaggten Builds aufgelistet:gcloud builds list --filter "tags='test1'"
Wenn Sie Builds nach mehreren Tags filtern möchten, verwenden Sie "AND", "OR" oder "NOT" zur Auflistung der Tags. Mit dem folgenden Befehl werden alle Builds aufgelistet, die mit
'test1'
oder'test2'
und mit'test3'
getaggt sind:gcloud builds list --filter "tags=('test1' OR 'test2') AND 'test3'"
Die Ausgabe nach der Ausführung dieser Befehle sollte in etwa so aussehen:
ID CREATE_TIME DURATION SOURCE IMAGES STATUS d33a9895-... ... 1M45S gs://... us-east1-docker.pkg.dev/... SUCCESS
Nächste Schritte
- Build-Ergebnisse für Build-Trigger aufrufen
- Build-Sicherheitsstatistiken aufrufen
- Build-Fehler beheben