Google Cloud 통합 API

Tier: Free, Premium, Ultimate Offering: GitLab.com Status: Experiment

프로젝트 수준의 Google Cloud 통합 스크립트

Status: Experiment

Workload identity federation 생성 스크립트

프로젝트의 메인테이너 역할을 적어도 가진 사용자는 다음 엔드포인트를 사용하여 Google Cloud에서 워크로드 식별 페더레이션을 생성하고 구성하는 셸 스크립트를 조회할 수 있습니다:

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 워크로드 식별 풀의 ID. 기본값은 gitlab-wlif
google_cloud_workload_identity_pool_display_name 문자열 아니요 생성할 Google Cloud 워크로드 식별 풀의 표시 이름. 기본값은 GitLab 통합을 위한 WLIF
google_cloud_workload_identity_pool_provider_id 문자열 아니요 생성할 Google Cloud 워크로드 식별 풀 제공자의 ID. 기본값은 gitlab-wlif-oidc-provider
google_cloud_workload_identity_pool_provider_display_name 문자열 아니요 생성할 Google Cloud 워크로드 식별 풀 제공자의 표시 이름. 기본값은 GitLab OIDC 제공자

예시 요청:

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 통합을 설정하는 셸 스크립트를 조회할 수 있습니다:

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

Google Artifact Registry 통합만 지원됩니다. 이 스크립트는 Google Artifact Registry에 액세스하기 위한 IAM 정책을 생성합니다:

지원되는 속성:

속성 유형 필수 설명
id 정수 GitLab 프로젝트 ID
enable_google_cloud_artifact_registry 부울 Google Artifact Registry 통합을 활성화해야 하는지 여부를 나타내는 플래그
google_cloud_artifact_registry_project_id 문자열 Artifact Registry를 위한 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"

Google Cloud 프로젝트를 위한 러너 프로비저닝 구성 스크립트

프로젝트의 메인테이너 역할을 적어도 가진 사용자는 다음 엔드포인트를 사용하여 지정된 Google Cloud 프로젝트에 러너 프로비저닝 및 실행을 위한 셸 스크립트를 조회할 수 있습니다:

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