setup-gcloud
Configure le SDK Google Cloud dans l'environnement GitHub Actions. Le SDK Google Cloud inclut à la fois les binaires gcloud et gsutil.
Ou intégrez-le de manière native à d'autres actions Google Cloud GitHub :
Il ne s'agit pas d'un produit Google officiellement pris en charge et il n'est pas couvert par un contrat d'assistance Google Cloud. Pour signaler des bugs ou demander des fonctionnalités dans un produit Google Cloud, veuillez contacter l'assistance Google Cloud.
Cette action nécessite des informations d'identification Google Cloud pour exécuter les commandes gcloud. Voir Autorisation pour plus de détails.
Cette action s'exécute à l'aide du nœud 20. Si vous utilisez des exécuteurs GitHub Actions auto-hébergés, vous devez utiliser une version d'exécution prenant en charge cette version ou une version plus récente.
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
: (Facultatif, par défaut : latest
) Une chaîne représentant la version ou la contrainte de version du SDK Cloud ( gcloud
) à installer (par exemple "290.0.1"
ou ">= 197.0.1"
). La valeur par défaut est "latest"
, qui téléchargera et installera toujours la dernière version disponible du SDK Cloud.
- uses: 'google-github-actions/setup-gcloud@v2'
with:
version: '>= 416.0.0'
Si aucune version gcloud
installée ne correspond à la contrainte donnée, cette action GitHub téléchargera et installera la dernière version disponible qui correspond toujours à la contrainte.
L'authentification via Workload Identity Federation nécessite la version 363.0.0 ou une version ultérieure. Si vous avez besoin de prise en charge pour Workload Identity Federation, spécifiez votre contrainte de version comme telle :
- uses: 'google-github-actions/setup-gcloud@v2'
with:
version: '>= 363.0.0'
Vous êtes responsable de vous assurer que la version gcloud
correspond aux fonctionnalités et aux composants requis.
project_id
: (Facultatif) ID du projet Google Cloud. S'il est fourni, cela configurera gcloud pour utiliser cet ID de projet par défaut pour les commandes. Les commandes individuelles peuvent toujours remplacer le projet en utilisant l'indicateur --project
qui est prioritaire. Si elle n'est pas spécifiée, l'action tente de trouver le « meilleur » ID de projet en examinant d'autres entrées et variables d'environnement.
install_components
: (Facultatif) Liste des composants gcloud supplémentaires à installer, spécifiée sous forme de liste de chaînes séparées par des virgules :
install_components: 'alpha,cloud-datastore-emulator'
skip_install
: (Facultatif) Ignorez l'installation de gcloud et utilisez plutôt la version fournie par le système. Si spécifié, l'entrée version
est ignorée.
version
: version de gcloud installée. L'action setup-gcloud
installe le SDK Cloud ( gcloud
). Pour configurer son authentification auprès de Google Cloud, vous devez d'abord utiliser l'action google-github-actions/auth. L'action auth
définit les informations d'identification par défaut de l'application, puis l'action setup-gcloud
fait référence à ces informations d'identification pour configurer les informations d'identification gcloud . Vous pouvez vous authentifier via les options suivantes :
bq
et gsutil
.
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 '
Si vous utilisez des coureurs auto-hébergés hébergés sur Google Cloud Platform, les informations d'identification sont automatiquement obtenues à partir du compte de service associé au coureur. Dans ce scénario, vous n'avez pas besoin d'exécuter l'action google-github-actions/auth.
jobs :
job_id :
steps :
- name : ' Set up Cloud SDK '
uses : ' google-github-actions/setup-gcloud@v2 '
- name : ' Use gcloud CLI '
run : ' gcloud info '
Pour utiliser plusieurs comptes de service, une deuxième étape d'authentification est requise pour mettre à jour les informations d'identification avant d'utiliser setup-gcloud
:
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]
Nous vous recommandons d'épingler la dernière version majeure disponible :
- uses : ' google-github-actions/setup-gcloud@v2 '
Bien que cette action tente de suivre le versionnement sémantique, nous sommes en fin de compte humains et commettons parfois des erreurs. Pour éviter les modifications accidentelles, vous pouvez également épingler une version spécifique :
- uses : ' google-github-actions/[email protected] '
Cependant, vous n'obtiendrez pas de mises à jour de sécurité automatiques ou de nouvelles fonctionnalités sans mettre explicitement à jour votre numéro de version. Notez que nous publions uniquement les versions MAJOR
et MAJOR.MINOR.PATCH
. Il n’existe pas d’alias flottant pour MAJOR.MINOR
.