이 안내는 Google과 함께 GitHub Enterprise 소스 코드 저장소를 사용하려는 애플리케이션 개발자, 플랫폼 관리자, 보안 관리자를 대상으로 합니다. 특히 Gemini Code Assist와 함께 GitHub Enterprise 저장소를 사용할 수 있습니다.
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.-
GitHub Enterprise의 계정에 액세스할 수 있는지 확인합니다.
팀의 작업을 안전하게 유지하려면 개인 계정이 아닌 봇 계정이나 팀에서 공유하는 계정을 사용하여 이 가이드의 작업을 완료하는 것이 좋습니다.
- GitHub Enterprise 저장소를 소유하고 있거나 공유 저장소에 대한 관리자 수준 권한이 있는지 확인합니다.
GitHub Enterprise 조직에서 저장소를 사용하는 경우 GitHub 앱 관리자 권한이 있는지 확인하세요.
- 선택사항: 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 권한 부여
연결 및 링크를 만드는 데 필요한 권한을 얻으려면 관리자에게 다음 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)가 있어야 합니다.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
연결 만들기
이 섹션에서는 Developer Connect와 GitHub Enterprise 간의 연결을 만드는 방법을 설명합니다. Google Cloud 콘솔을 사용하는 경우 연결 설정을 완료할 때 저장소 링크 추가를 시작할 수도 있습니다.
새 GitHub Enterprise 연결을 만들려면 다음 옵션 중 하나를 선택하세요.
콘솔
다음 단계를 완료하여 연결을 시작합니다.
Google Cloud 콘솔에서 Developer Connect를 엽니다.
Developer Connect에 Git 저장소 페이지가 표시됩니다.
- 소스 코드 관리 제공업체 목록이 표시되는 경우: 소스 코드 관리 제공업체를 선택하여 첫 번째 연결 구성을 시작합니다. GitHub Enterprise 카드에서 연결을 클릭합니다.
기존 연결이 나열된 표가 표시되는 경우: 연결 만들기 > GitHub Enterprise를 클릭하여 소스 코드 관리 제공업체를 설정합니다.
연결 만들기 페이지가 열립니다.
리전에서 연결 리소스의 리전을 선택합니다.
- 이름에 새 연결의 이름을 입력합니다.
데이터 상주 요구사항을 준수하는 연결을 만들려면 데이터 상주 규정 준수 연결 사용 설정 체크박스를 활성화합니다.
Google Cloud 콘솔을 사용하여 만든 GitHub 연결은 연결을 만들 때 이 체크박스를 활성화하면 데이터 저장 위치 규정을 준수합니다. 이렇게 하면 Developer Connect에서 GitHub 앱을 만듭니다.
Google Cloud CLI를 사용하여 GitHub 연결을 만들면 이러한 연결은 데이터 저장 위치 규정을 준수하지 않습니다. 다른 모든 연결 유형은 데이터 상주 규정을 준수합니다.
- 호스트 URL에 연결할 호스트의 URL을 입력합니다.
선택적 구성 설정을 보려면 더보기를 클릭합니다.
선택사항: 기본적으로 Developer Connect는 GitHub Enterprise에 대한 Git 호출의 프록시 역할을 할 수 있습니다. 이 옵션을 사용 중지하려면 Developer Connect 프록시 사용 설정 체크박스를 선택 해제합니다.
네트워크 유형으로 공용 인터넷을 선택합니다.
비공개 네트워크를 사용하려면 비공개 네트워크에서 호스팅되는 GitHub Enterprise 저장소에 연결을 참고하세요.
선택사항: 암호화 섹션에서 CMEK 키를 선택하여 Developer Connect에서 만드는 Secret Manager 보안 비밀을 암호화합니다.
계속을 클릭합니다.
GitHub 앱을 만들라는 메시지가 표시된 GitHub 대화상자가 나타납니다.
GitHub의 프롬프트에 따라 다음 작업을 완료합니다.
앱 이름을 입력합니다.
앱을 설치할 조직을 선택합니다.
액세스 권한을 부여할 저장소를 선택합니다.
대화상자가 닫힙니다.
Developer Connect는 GitHub에서 비공개 키를 가져와 Google Cloud 프로젝트에 Secret Manager 보안 비밀로 저장합니다. 보안 비밀을 보려면 Secret Manager에서 보안 비밀을 나열하세요.
연결이 생성되면 저장소 연결 페이지가 표시됩니다.
다음 단계를 완료하여 저장소를 연결에 연결합니다.
사용 가능한 저장소 목록에서 사용할 저장소를 선택합니다.
확인을 클릭합니다.
링크를 클릭합니다.
연결이 연결 페이지에 추가되고 저장소 링크가 Google Cloud 콘솔의 저장소 페이지에 추가됩니다. 언제든지 기존 연결에 링크를 추가할 수 있습니다.
Gemini Code Assist를 설정하는 경우 Gemini Code Assist 코드 맞춤설정 구성 및 사용의 단계에 따라 프로세스를 계속 진행하세요.
gcloud
다음 작업을 수행하려면 웹브라우저에서 몇 가지 작업을 해야 합니다.
다음 단계를 완료하여 연결을 시작합니다.
gcloud developer-connect connections create명령어를 실행하여 GitHub Enterprise에 연결합니다.gcloud developer-connect connections create CONNECTION_NAME \ --location=REGION \ --github-enterprise-config-host-uri=HOST_URI --git-proxy-config-enabled다음을 바꿉니다.
GitHub와의 연결을 관리하려면 GitHub 앱을 만들어야 합니다. 다음 명령어를 실행하여 앱 설정의 URI를 가져옵니다.
gcloud developer-connect connections describe CONNECTION_NAME \ --location=REGION다음을 바꿉니다.
- CONNECTION_NAME: 연결의 이름입니다.
- REGION: 연결의 리전입니다.
Developer Connect는 브라우저 창에서 다음 단계를 완료할 수 있는 링크를 반환합니다. 이 링크를 복사합니다.
웹브라우저에서 링크를 엽니다.
메시지가 표시되면 GitHub 계정에 로그인합니다.
GitHub의 프롬프트에 따라 다음 작업을 완료합니다.
앱 이름을 입력합니다.
앱을 설치할 조직을 선택합니다.
액세스 권한을 부여할 저장소를 선택합니다.
대화상자가 닫힙니다.
Developer Connect는 GitHub에서 비공개 키를 가져와 Google Cloud 프로젝트에 Secret Manager 보안 비밀로 저장합니다. 보안 비밀을 보려면 Secret Manager에서 보안 비밀을 나열하세요.
연결 확인하기
다음 명령어를 실행하여 GitHub 연결 생성을 확인합니다.
gcloud developer-connect connections describe CONNECTION_NAME \
--location=REGION
각 항목의 의미는 다음과 같습니다.
- CONNECTION_NAME: 이전 단계에서 만든
- REGION: 연결의 리전입니다.
Developer Connect는 installationState 필드에 상태를 반환합니다. 이 필드의 값이 COMPLETE이면 앱 설치가 완료된 것입니다.
그렇지 않으면 Developer Connect에서 브라우저의 구성으로 돌아가는 URI를 반환합니다.
연결이 완료되면 저장소에 연결의 안내에 따라 연결할 저장소를 선택합니다.
기존 연결에 저장소 링크 추가
GitHub Enterprise에 연결되면 저장소에 연결할 수 있습니다. 나중에 필요에 따라 이 단계를 반복하여 저장소를 추가로 연결할 수 있습니다.
기존 GitHub Enterprise 연결에 저장소 링크를 만들려면 다음 옵션 중 하나를 선택하세요.
콘솔
Google Cloud 콘솔에서 저장소 페이지를 엽니다.
저장소 연결을 클릭합니다.
Git 저장소 연결 창이 열립니다.
연결 목록에서 연결을 선택합니다.
계속을 클릭합니다.
저장소 목록에서 연결할 저장소를 선택합니다.
만들기를 클릭합니다.
Developer Connect는 저장소 링크를 만들어 Google Cloud 콘솔에 표시합니다.
gcloud
다음 명령어를 실행합니다.
gcloud developer-connect connections git-repository-links create REPO_NAME \
--clone-uri=REPO_URI \
--connection=CONNECTION_NAME \
--location=REGION
다음을 바꿉니다.
- REPO_NAME: 저장소 링크의 이름입니다.
- REPO_URI: 저장소 링크
예를 들면
https://github.com/cloud-build/test-repo.git입니다. - CONNECTION_NAME: 이전 단계에서 만든
- REGION: 연결의 리전입니다.
Developer Connect에서 저장소 링크를 만듭니다.
연결된 저장소를 나열하려면 developer-connect connections git-repository-links list 명령어를 실행합니다.
Gemini Code Assist를 설정하는 경우 Gemini Code Assist 코드 맞춤설정 구성 및 사용의 단계에 따라 프로세스를 계속 진행하세요.
데이터 공유
이 연결에 연결된 Google Cloud 리소스의 콘텐츠가 GitHub로 전송될 수 있습니다. 이 문은 이 연결을 활용하는 모든 기존 및 신규 리소스에 적용됩니다. GitHub와의 정보 공유를 중지하려면 Google Cloud 콘솔 또는 gcloud CLI에서 Developer Connect 연결을 삭제하고 GitHub에서 액세스 권한을 취소하세요.
다음 단계
- Gemini Code Assist 코드 맞춤설정 설정 완료
- Gemini Code Assist가 소프트웨어 개발 속도를 높이는 방법 알아보기
- Developer Connect를 통해 제공되는 다른 통합을 살펴봅니다.