Back to Gitlabhq

API d'intégration Google Cloud

doc-locale/fr-fr/api/google_cloud_integration.md

19.1.06.7 KB
Original Source

{{< details >}}

  • Édition : Gratuite, GitLab Premium, GitLab Ultimate
  • Offre : GitLab.com
  • Statut : Expérience

{{< /details >}}

Utilisez cette API pour interagir avec l'intégration Google Cloud. Pour plus d'informations, consultez Intégration GitLab et Google Cloud.

Scripts d'intégration Google Cloud au niveau du projet {#project-level-google-cloud-integration-scripts}

{{< details >}}

  • Statut : Expérience

{{< /details >}}

{{< history >}}

{{< /history >}}

Script de création de la fédération d'identité de charge de travail {#workload-identity-federation-creation-script}

{{< history >}}

{{< /history >}}

Les utilisateurs disposant du rôle Maintainer ou Owner pour le projet peuvent utiliser le point de terminaison suivant pour interroger un script shell qui crée et configure la fédération d'identité de charge de travail dans Google Cloud :

plaintext
GET /projects/:id/google_cloud/setup/wlif.sh

Attributs pris en charge :

AttributTypeObligatoireDescription
identierOuiL'ID d'un projet.
google_cloud_project_idstringOuiID de projet Google Cloud pour la fédération d'identité de charge de travail.
google_cloud_workload_identity_pool_idstringNonID du pool d'identités de charge de travail Google Cloud à créer. Par défaut gitlab-wlif.
google_cloud_workload_identity_pool_display_namestringNonNom d'affichage du pool d'identités de charge de travail Google Cloud à créer. Par défaut WLIF for GitLab integration.
google_cloud_workload_identity_pool_provider_idstringNonID du fournisseur du pool d'identités de charge de travail Google Cloud à créer. Par défaut gitlab-wlif-oidc-provider.
google_cloud_workload_identity_pool_provider_display_namestringNonNom d'affichage du fournisseur du pool d'identités de charge de travail Google Cloud à créer. Par défaut GitLab OIDC provider.

Exemple de requête :

shell
curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.com/api/v4/projects/<your_project_id>/google_cloud/setup/wlif.sh"

Script de configuration d'une intégration Google Cloud {#script-to-set-up-a-google-cloud-integration}

{{< history >}}

{{< /history >}}

Les utilisateurs disposant du rôle Maintainer ou Owner pour le projet peuvent utiliser le point de terminaison suivant pour interroger un script shell permettant de configurer une intégration Google Cloud :

plaintext
GET /projects/:id/google_cloud/setup/integrations.sh

Seule l'intégration Google Artifact Management est prise en charge. Le script crée des politiques IAM pour accéder à Google Artifact Registry :

Attributs pris en charge :

AttributTypeObligatoireDescription
identierOuiL'ID d'un projet GitLab.
enable_google_cloud_artifact_registrybooleanOuiIndicateur permettant de spécifier si l'intégration Google Artifact Management doit être activée.
google_cloud_artifact_registry_project_idstringOuiID de projet Google Cloud pour l'Artifact Registry.

Exemple de requête :

shell
curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.com/api/v4/projects/<your_project_id>/google_cloud/setup/integrations.sh"

Script de configuration d'un projet Google Cloud pour le provisionnement des runners {#script-to-configure-a-google-cloud-project-for-runner-provisioning}

{{< history >}}

{{< /history >}}

Les utilisateurs disposant du rôle Maintainer ou Owner pour le projet peuvent utiliser le point de terminaison suivant pour interroger un script shell permettant de configurer un projet Google Cloud pour le provisionnement et l'exécution des runners :

plaintext
GET /projects/:id/google_cloud/setup/runner_deployment_project.sh

Le script effectue des étapes de configuration préparatoires dans le projet Google Cloud spécifié, notamment l'activation des services requis et la création d'un rôle GRITProvisioner et d'un compte de service grit-provisioner.

Attributs pris en charge :

AttributTypeObligatoireDescription
identierOuiL'ID d'un projet GitLab.
google_cloud_project_idstringOuiL'ID du projet Google Cloud.

Exemple de requête :

shell
curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.com/api/v4/projects/<your_project_id>/google_cloud/setup/runner_deployment_project.sh?google_cloud_project_id=<your_google_cloud_project_id>"