正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

Google CloudインテグレーションAPI

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com
  • ステータス: 実験的機能

このAPIを使用して、Google Cloudインテグレーションと連携します。詳細については、GitLabとGoogle Cloudインテグレーションを参照してください。

プロジェクトレベルのGoogle Cloudインテグレーションスクリプト

  • ステータス: 実験的機能

ワークロードアイデンティティフェデレーション作成スクリプト

プロジェクトのメンテナーまたはオーナーロールを持つユーザーは、次のエンドポイントを使用して、Google Cloudでワークロードアイデンティティフェデレーションを作成し設定するShellスクリプトをクエリすることができます:

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

サポートされている属性は以下のとおりです:

属性必須説明
id整数はいプロジェクトのID。
google_cloud_project_id文字列はいワークロードアイデンティティフェデレーション用のGoogle CloudプロジェクトID。
google_cloud_workload_identity_pool_id文字列いいえ作成するGoogle Cloud Workload IdentityプールID。gitlab-wlifがデフォルトです。
google_cloud_workload_identity_pool_display_name文字列いいえ作成するGoogle Cloud Workload Identityプールの表示名。WLIF for GitLab integrationがデフォルトです。
google_cloud_workload_identity_pool_provider_id文字列いいえ作成するGoogle Cloud Workload IdentityプールプロバイダのID。gitlab-wlif-oidc-providerがデフォルトです。
google_cloud_workload_identity_pool_provider_display_name文字列いいえ作成するGoogle Cloud Workload Identityプールプロバイダの表示名。GitLab OIDC providerがデフォルトです。

リクエスト例:

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

Google Cloudインテグレーションのセットアップスクリプト

プロジェクトのメンテナーまたはオーナーロールを持つユーザーは、次のエンドポイントを使用して、Google CloudインテグレーションをセットアップするShellスクリプトをクエリすることができます:

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

Google Artifact Managementインテグレーションのみがサポートされています。このスクリプトは、Google ArtifactレジストリにアクセスするためのIAMポリシーを作成します:

サポートされている属性は以下のとおりです:

属性必須説明
id整数はいGitLabプロジェクトのID。
enable_google_cloud_artifact_registryブール値はいGoogle Artifact Managementインテグレーションを有効にするかどうかを示すフラグ。
google_cloud_artifact_registry_project_id文字列はいArtifactレジストリ用のGoogle CloudプロジェクトID。

リクエスト例:

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

Runnerのプロビジョニング用にGoogle Cloudプロジェクトを設定するスクリプト

プロジェクトのメンテナーまたはオーナーロールを持つユーザーは、次のエンドポイントを使用して、Runnerのプロビジョニングおよび実行用にGoogle Cloudプロジェクトを設定するShellスクリプトをクエリすることができます:

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

このスクリプトは、指定されたGoogle Cloudプロジェクトで準備設定手順を実行します。具体的には、必要なサービスを有効にし、GRITProvisionerロールとgrit-provisionerサービスアカウントを作成します。

サポートされている属性は以下のとおりです:

属性必須説明
id整数はいGitLabプロジェクトのID。
google_cloud_project_id文字列はいGoogle CloudプロジェクトのID。

リクエスト例:

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>"