setup-gcloud
GitHub-AktionKonfiguriert das Google Cloud SDK in der GitHub Actions-Umgebung. Das Google Cloud SDK enthält sowohl die Binärdateien gcloud als auch gsutil.
Oder nativ mit anderen Google Cloud GitHub Actions integrieren:
Dies ist kein offiziell unterstütztes Google-Produkt und es ist nicht durch einen Google Cloud-Supportvertrag abgedeckt. Um Fehler zu melden oder Funktionen in einem Google Cloud-Produkt anzufordern, wenden Sie sich bitte an den Google Cloud-Support.
Für diese Aktion sind Google Cloud-Anmeldeinformationen erforderlich, um gcloud-Befehle auszuführen. Weitere Einzelheiten finden Sie unter Autorisierung.
Diese Aktion wird über Knoten 20 ausgeführt. Wenn Sie selbstgehostete GitHub Actions-Runner verwenden, müssen Sie eine Runner-Version verwenden, die diese oder eine neuere Version unterstützt.
jobs :
job_id :
# Add "id-token" with the intended permissions.
permissions :
contents : ' read '
id-token : ' write '
steps :
- id : ' auth '
uses : ' google-github-actions/auth@v2 '
with :
workload_identity_provider : ' projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider '
service_account : ' [email protected] '
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
with :
version : ' >= 363.0.0 '
- name : ' Use gcloud CLI '
run : ' gcloud info '
version
: (Optional, Standard: latest
) Eine Zeichenfolge, die die Version oder Versionseinschränkung des zu installierenden Cloud SDK ( gcloud
) darstellt (z. B. "290.0.1"
oder ">= 197.0.1"
). Der Standardwert ist "latest"
, wodurch immer die neueste verfügbare Cloud SDK-Version heruntergeladen und installiert wird.
- uses: 'google-github-actions/setup-gcloud@v2'
with:
version: '>= 416.0.0'
Wenn keine installierte gcloud
Version vorhanden ist, die der angegebenen Einschränkung entspricht, lädt diese GitHub-Aktion die neueste verfügbare Version herunter und installiert sie, die noch der Einschränkung entspricht.
Für die Authentifizierung über Workload Identity Federation ist Version 363.0.0 oder höher erforderlich. Wenn Sie Unterstützung für Workload Identity Federation benötigen, geben Sie Ihre Versionseinschränkung wie folgt an:
- uses: 'google-github-actions/setup-gcloud@v2'
with:
version: '>= 363.0.0'
Sie sind dafür verantwortlich, sicherzustellen, dass die gcloud
-Version den erforderlichen Funktionen und Komponenten entspricht.
project_id
: (Optional) ID des Google Cloud-Projekts. Falls angegeben, wird gcloud so konfiguriert, dass diese Projekt-ID standardmäßig für Befehle verwendet wird. Einzelne Befehle können das Projekt weiterhin überschreiben, indem sie das Flag --project
verwenden, das Vorrang hat. Wenn keine Angabe erfolgt, versucht die Aktion, die „beste“ Projekt-ID zu finden, indem sie sich andere Eingaben und Umgebungsvariablen ansieht.
install_components
: (Optional) Liste der zusätzlich zu installierenden gcloud-Komponenten, angegeben als durch Kommas getrennte Liste von Zeichenfolgen:
install_components: 'alpha,cloud-datastore-emulator'
skip_install
: (Optional) Überspringen Sie die Installation von gcloud und verwenden Sie stattdessen die vom System bereitgestellte Version. Wenn angegeben, wird die version
ignoriert.
version
: Version von gcloud, die installiert wurde. Die Aktion setup-gcloud
installiert das Cloud SDK ( gcloud
). Um die Authentifizierung bei Google Cloud zu konfigurieren, müssen Sie zunächst die Aktion google-github-actions/auth verwenden. Die auth
legt die Standardanmeldeinformationen der Anwendung fest. Anschließend verweist die Aktion setup-gcloud
auf diese Anmeldeinformationen, um die gcloud-Anmeldeinformationen zu konfigurieren. Sie können sich über die folgenden Optionen authentifizieren:
bq
und gsutil
zu authentifizieren.
jobs :
job_id :
# Add "id-token" with the intended permissions.
permissions :
contents : ' read '
id-token : ' write '
steps :
- id : ' auth '
uses : ' google-github-actions/auth@v2 '
with :
workload_identity_provider : ' projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider '
service_account : ' [email protected] '
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud info '
jobs :
job_id :
steps :
- id : ' auth '
uses : ' google-github-actions/auth@v2 '
with :
credentials_json : ' ${{ secrets.GCP_CREDENTIALS }} '
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud info '
Wenn Sie selbst gehostete Runner verwenden, die auf der Google Cloud Platform gehostet werden, werden die Anmeldeinformationen automatisch von dem mit dem Runner verknüpften Dienstkonto abgerufen. In diesem Szenario müssen Sie die Aktion google-github-actions/auth nicht ausführen.
jobs :
job_id :
steps :
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud info '
Um mehrere Dienstkonten zu verwenden, ist ein zweiter Authentifizierungsschritt erforderlich, um die Anmeldeinformationen vor der Verwendung von setup-gcloud
zu aktualisieren:
jobs :
job_id :
# Add "id-token" with the intended permissions.
permissions :
contents : ' read '
id-token : ' write '
steps :
- id : ' auth service account 1 '
uses : ' google-github-actions/auth@v2 '
with :
workload_identity_provider : ' projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider '
service_account : ' [email protected] '
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud auth list --filter=status:ACTIVE --format="value(account)" '
# [email protected]
- id : ' auth service account 2 '
uses : ' google-github-actions/auth@v2 '
with :
credentials_json : ' ${{ secrets.GCP_CREDENTIALS }} '
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud auth list --filter=status:ACTIVE --format="value(account)" '
# [email protected]
Wir empfehlen das Anheften an die neueste verfügbare Hauptversion:
- uses : ' google-github-actions/setup-gcloud@v2 '
Obwohl diese Aktion versucht, der semantischen Versionierung zu folgen, sind wir letztendlich nur Menschen und machen manchmal Fehler. Um versehentliche Breaking Changes zu verhindern, können Sie auch eine bestimmte Version anpinnen:
- uses : ' google-github-actions/[email protected] '
Allerdings erhalten Sie keine automatischen Sicherheitsupdates oder neuen Funktionen, ohne Ihre Versionsnummer explizit zu aktualisieren. Beachten Sie, dass wir nur die Versionen MAJOR
und MAJOR.MINOR.PATCH
veröffentlichen. Es gibt keinen schwebenden Alias für MAJOR.MINOR
.