다음은 Google과 함께 Bitbucket 데이터 센터 소스 코드 저장소를 사용하려는 애플리케이션 개발자, 플랫폼 관리자, 보안 관리자를 위한 안내입니다. 특히 Gemini Code Assist와 함께 Bitbucket 데이터 센터 저장소를 사용할 수 있습니다.
Developer Connect에 대해 자세히 알아보려면 Developer Connect 개요를 참고하세요.
시작하기 전에
-
Google 계정에
로그인합니다.
아직 계정이 없으면 새 계정을 등록하세요.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Bitbucket 데이터 센터의 계정에 액세스할 수 있는지 확인합니다.
팀의 작업을 안전하게 유지하려면 개인 계정이 아닌 봇 계정이나 팀에서 공유하는 계정을 사용하여 이 가이드의 작업을 완료하는 것이 좋습니다.
- Bitbucket 데이터 센터 저장소를 소유하고 있거나 공유 저장소에 대한 관리자 수준 권한이 있는지 확인합니다.
- 선택사항: Developer Connect에서 만드는 인증 보안 비밀을 암호화하기 위한 고객 관리 암호화 키 (CMEK)를 만듭니다.
- 선택사항: 이 가이드의 명령줄 안내를 사용하려면 다음 단계를 완료하세요.
- Google Cloud CLI 설치 이전에 gcloud CLI를 설치한 경우
gcloud components update를 실행하여 최신 버전을 사용할 수 있는지 확인합니다. - 다음 명령어를 실행하여 Developer Connect 서비스 계정을 만듭니다. 여기서 PROJECT_ID는 Google Cloud 프로젝트 ID입니다.
gcloud beta services identity create \ --service=developerconnect.googleapis.com \ --project=PROJECT_ID
- Google Cloud CLI 설치 이전에 gcloud CLI를 설치한 경우
Developer Connect를 사용 설정하면 Secret Manager API도 사용 설정됩니다.
필요한 역할
연결 및 링크를 만드는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
-
프로젝트 소유자가 아닌 경우 다음 권한이 있어야 합니다.
사용자 계정에 대한 Developer Connect 관리자 (
roles/developerconnect.admin) -
CMEK를 사용하여 Developer Connect에서 생성하는 보안 비밀을 암호화하려는 경우 다음 권한이 필요합니다.
Secret Manager 서비스 계정에 대한 Cloud KMS CryptoKey 암호화/복호화 (
roles/cloudkms.cryptoKeyEncrypterDecrypter) -
gcloud CLI를 사용하여 이 가이드의 단계를 완료하려면 다음이 필요합니다.
개발자 연결 서비스 계정에 대한 Secret Manager 관리자 역할 (
roles/secretmanager.admin) -
Google Cloud 콘솔을 사용하여 이 가이드의 단계를 완료하려면 사용자 계정에 프로젝트 IAM 관리자 (
roles/resourcemanager.projectIamAdmin)가 있어야 합니다.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
액세스 토큰 만들기
다음 단계를 완료하여 Bitbucket 데이터 센터에서 개인 액세스 토큰을 만듭니다.
Bitbucket 데이터 센터 문서의 안내에 따라 두 개의 HTTP 액세스 토큰을 만들고 다음 범위를 부여합니다.
Developer Connect는 사용자, 프로젝트, 저장소 액세스 토큰을 지원합니다.
repository admin범위로 토큰 하나를 만듭니다. Developer Connect에서 이 토큰을 관리자 액세스 토큰이라고 합니다.repository read범위로 토큰 하나를 만듭니다. Developer Connect에서 이 토큰을 읽기 액세스 토큰이라고 합니다.
Bitbucket 데이터 센터에서 Bitbucket 데이터 센터 토큰 수명을 관리해야 합니다. 소스 코드를 보호하기 위해 토큰을 만드는 동안 만료일을 설정할 수 있습니다. 만료일을 설정하지 않으면 Bitbucket 데이터 센터에서 토큰을 취소할 때까지 토큰이 유효한 상태로 유지됩니다.
다음 절차에서 사용할 액세스 토큰을 복사합니다.
연결 만들기
이 섹션에서는 Developer Connect와 Bitbucket 데이터 센터 간의 연결을 만드는 방법을 설명합니다. Google Cloud 콘솔을 사용하는 경우 연결 설정을 완료할 때 저장소 링크 추가를 시작할 수도 있습니다.
새 Bitbucket 데이터 센터 연결을 만들려면 다음 옵션 중 하나를 선택합니다.
콘솔
다음 단계를 완료하여 연결을 시작합니다.
Google Cloud 콘솔에서 Developer Connect를 엽니다.
Developer Connect에 Git 저장소 페이지가 표시됩니다.
- 소스 코드 관리 제공업체 목록이 표시되는 경우: 소스 코드 관리 제공업체를 선택하여 첫 번째 연결 구성을 시작합니다. Bitbucket Data Center 카드에서 연결을 클릭합니다.
기존 연결이 나열된 표가 표시되는 경우: 연결 만들기 > Bitbucket 데이터 센터를 클릭하여 소스 코드 관리 제공업체를 설정합니다.
연결 만들기 페이지가 열립니다.
리전에서 연결 리소스의 리전을 선택합니다.
- 이름에 새 연결의 이름을 입력합니다.
호스트 URL에 연결할 Bitbucket 데이터 센터 호스트의 URL을 입력합니다.
액세스 토큰 섹션에 Bitbucket 데이터 센터 액세스 토큰을 입력합니다.
관리자 액세스 토큰: 저장소 관리자 범위의 액세스 권한이 있는 토큰을 입력합니다.
읽기 액세스 토큰: 저장소 읽기 범위 액세스 권한이 있는 토큰을 입력합니다.
선택적 구성 설정을 보려면 더보기를 클릭합니다.
선택사항: 기본적으로 Developer Connect는 Bitbucket 데이터 센터에 대한 Git 호출의 프록시 역할을 할 수 있습니다. 이 옵션을 사용 중지하려면 Developer Connect 프록시 사용 설정 체크박스를 선택 해제합니다.
선택사항: 암호화 섹션에서 CMEK 키를 선택하여 Developer Connect에서 만드는 Secret Manager 보안 비밀을 암호화합니다.
계속 버튼을 클릭합니다. Developer Connect에서 연결을 만듭니다. 이 과정은 몇 초 정도 걸릴 수 있습니다.
연결이 생성되면 저장소 연결 페이지가 표시됩니다.
다음 단계를 완료하여 저장소를 연결에 연결합니다.
사용 가능한 저장소 목록에서 사용할 저장소를 선택합니다.
확인을 클릭합니다.
링크를 클릭합니다.
연결이 연결 페이지에 추가되고 저장소 링크가 Google Cloud 콘솔의 저장소 페이지에 추가됩니다. 언제든지 기존 연결에 링크를 추가할 수 있습니다.
Gemini Code Assist를 설정하는 경우 Gemini Code Assist 코드 맞춤설정 구성 및 사용의 단계에 따라 프로세스를 계속 진행하세요.
gcloud
다음 명령어를 실행하여 Secret Manager에 웹훅 보안 비밀을 만듭니다. 여기서 WEBHOOK_SECRET_NAME은 웹훅 보안 비밀의 이름입니다.
cat /proc/sys/kernel/random/uuid | tr -d '\n' | gcloud secrets create WEBHOOK_SECRET_NAME다음 명령어를 실행하여 Secret Manager에 액세스 토큰을 저장합니다.
gcloud secrets create ADMIN_SECRET_NAME echo -n ADMIN_SECRET_DATA | gcloud secrets versions add ADMIN_SECRET_NAME --data-file=- gcloud secrets create READ_SECRET_NAME echo -n READ_SECRET_DATA | gcloud secrets versions add READ_SECRET_NAME --data-file=-다음을 바꿉니다.
- ADMIN_SECRET_NAME: 관리자 액세스 토큰을 저장하는 보안 비밀의 이름입니다.
- ADMIN_SECRET_DATA: 관리자 액세스 토큰.
- READ_SECRET_NAME: 읽기 액세스 토큰을 저장하는 보안 비밀의 이름입니다.
- READ_SECRET_DATA: 읽기 액세스 토큰입니다.
gcloud developer-connect connections create명령어를 실행하여 Bitbucket 데이터 센터에 연결을 만듭니다.gcloud developer-connect connections create CONNECTION_NAME \ --location=REGION \ --bitbucket-data-center-config-host-uri=HOST_URI \ --bitbucket-data-center-config-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/ADMIN_SECRET_NAME/versions/VERSION \ --bitbucket-data-center-config-read-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/READ_SECRET_NAME/versions/VERSION \ --bitbucket-data-center-config-webhook-secret-version=projects/PROJECT_ID/secrets/WEBHOOK_SECRET_NAME/versions/VERSION --git-proxy-config-enabled다음을 바꿉니다.
- CONNECTION_NAME: 연결 이름입니다.
- REGION: 연결에 사용할 리전입니다.
- HOST_URI:
https://접두사를 포함한 Bitbucket 데이터 센터 호스트의 URI입니다. - PROJECT_ID: Google Cloud프로젝트 ID
- ADMIN_SECRET_NAME: 관리자 액세스 토큰이 포함된 Secret Manager 보안 비밀의 이름
- READ_SECRET_NAME: 읽기 액세스 토큰이 포함된 Secret Manager 보안 비밀의 이름입니다.
- WEBHOOK_SECRET_NAME: 웹훅 보안 비밀이 포함된 Secret Manager 보안 비밀의 이름입니다.
- VERSION: 각 보안 비밀의 버전 번호입니다. 최신 버전 번호를 사용하려면
latest일 수 있습니다. --git-proxy-config-enabled: 개발자 연결이 Bitbucket Data Center에 대한 Git 호출의 프록시 역할을 하도록 지원하는 선택적 플래그입니다. 이는 미리보기 버전에 있는 기능입니다.
Developer Connect가 Bitbucket 데이터 센터에 대한 연결을 완료합니다. 그런 다음 저장소에 연결합니다.
기존 연결을 사용하여 저장소에 연결
Bitbucket 데이터 센터에 연결되면 저장소에 연결할 수 있습니다. 나중에 필요에 따라 이 단계를 반복하여 저장소를 추가로 연결할 수 있습니다.
기존 Bitbucket 데이터 센터 연결에 저장소 링크를 만들려면 다음 옵션 중 하나를 선택합니다.
콘솔
다음 단계를 완료하여 저장소 링크를 만듭니다.
Google Cloud 콘솔에서 저장소 페이지를 엽니다.
저장소 연결을 클릭합니다.
Git 저장소 연결 창이 열립니다.
연결 목록에서 연결을 선택합니다.
계속을 클릭합니다.
저장소 목록에서 연결할 저장소를 선택합니다.
Developer Connect에 저장소 리소스의 추천 이름이 표시됩니다.
저장소 리소스 이름 지정 옵션을 선택합니다.
- 생성됨: 생성된 저장소 리소스 이름을 사용합니다.
- 수동: 직접 이름을 입력합니다.
만들기를 클릭합니다.
Developer Connect는 저장소 링크를 만들어 Google Cloud 콘솔에 표시합니다.
gcloud
다음 명령어를 실행하여 Bitbucket 데이터 센터 저장소 링크를 만듭니다.
gcloud developer-connect connections git-repository-links create REPO_NAME \
--clone-uri=REPO_URI \
--connection=CONNECTION_NAME \
--location=REGION
다음을 바꿉니다.
- REPO_NAME: Developer Connect와 Bitbucket 데이터 센터 저장소 간의 새 링크 이름입니다.
- REPO_URI: Bitbucket 데이터 센터의 저장소 URL입니다.
https://접두사와.git접미사가 포함됩니다. - CONNECTION_NAME: Bitbucket 데이터 센터 연결의 이름입니다.
- REGION: 연결의 리전입니다.
Developer Connect에서 저장소 링크를 만듭니다.
연결된 저장소를 나열하려면 developer-connect connections git-repository-linkslist 명령어를 실행합니다.
Gemini Code Assist를 설정하는 경우 Gemini Code Assist 코드 맞춤설정 구성 및 사용의 단계에 따라 프로세스를 계속 진행하세요.
다음 단계
- Gemini Code Assist 코드 맞춤설정 설정 완료
- Gemini Code Assist가 소프트웨어 개발 속도를 높이는 방법 알아보기
- Developer Connect를 통해 제공되는 다른 통합을 살펴봅니다.