本頁說明如何將 GitHub 存放區連結至 Cloud Build。如要進一步瞭解 Cloud Build 存放區,請參閱「Cloud Build 存放區」。
事前準備
-
Enable the Cloud Build API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
- 在 GitHub 存放區中準備好原始碼。
- 在 GitHub 來源存放區中,擁有
Dockerfile
或 Cloud Build 設定檔。 - 如果一開始是將存放區連結至 Cloud Build,請確認您對存放區擁有管理員層級的權限。如要進一步瞭解 GitHub 存放區權限,請參閱「機構的存放區權限等級」。
如要在本頁面使用
gcloud
指令,請安裝 Google Cloud CLI。
連結至 GitHub 存放區
如要將 GitHub 存放區連結至 Cloud Build,請按照下列步驟操作:
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
在頂端列的專案選取器中,選取 Google Cloud 專案。
選取頁面頂端的「第 1 代」分頁標籤。
按一下 [Connect repository] (連結存放區)。
畫面會顯示「連結存放區」面板。
在「選取原始碼管理服務供應商」下方,選取「GitHub Cloud Build GitHub 應用程式」。
按一下「繼續」。
系統可能會要求您驗證與 GitHub 的連線,或安裝 GitHub 應用程式。如果尚未完成這些操作,請按照下列步驟進行:
如果尚未登入 GitHub,請立即登入。
系統隨即會顯示「Authorization」(授權) 頁面,並要求您授權 Google Cloud Build 應用程式連線至 Google Cloud。
按一下 [Authorize Google Cloud Build by GoogleCloudBuild]。
按一下「安裝 Google Cloud Build」。
在隨即顯示的對話方塊中,選取 GitHub 使用者名稱或機構。
依據您的業務需求選取下列其中一個選項:
所有存放區 - 啟用目前和日後的 GitHub 存放區,以便使用 Cloud Build 應用程式存取
「Only select repositories」(僅限特定存放區):使用「Select repositories」(選取存放區) 下拉式選單,僅允許特定存放區透過 Cloud Build 應用程式存取。
您之後可以啟用其他存放區。如果選取「All repositories」(所有存放區),Cloud Build 應用程式就能存取所有存放區。不過,您必須按照本節所述步驟,透過 Cloud Build 連線至每個新存放區。
按一下「安裝」即可安裝 Cloud Build 應用程式。
對話方塊會關閉,並顯示「Repositories」頁面。
在「選取存放區」部分中,選取下列欄位:
GitHub 帳戶:用於安裝 Cloud Build GitHub 應用程式的 GitHub 帳戶。系統可能會預先選取這個欄位。
存放區:要連結至 Cloud Build 的存放區。
如果沒有看到一或多個目標存放區,請點選「Edit repositories on GitHub」,在 Cloud Build GitHub 應用程式中啟用其他存放區,然後在「Select Repository」部分選取新的目標存放區。
選取 GitHub 帳戶和存放區後,請詳閱同意聲明免責事項,然後勾選旁邊的核取方塊,表示您接受顯示的條款。
按一下「連線」。
(選用) 在「建立觸發條件」部分中,選取要為哪些存放區建立觸發條件,請在「為這些存放區建立範例觸發條件」欄位中選取。選取存放區後,按一下「建立觸發條件」。
按一下 [完成]。
(選用) 更新已驗證的 GitHub 帳戶
如要更新與 Google 帳戶相關聯的 GitHub 帳戶,請前往「使用 GitHub 進行驗證」頁面。如果您在 GitHub 上安裝 Cloud Build 應用程式後,發現「Cloud Build Connect Repository」頁面指出 GitHub 應用程式未安裝在任何存放區,可能就需要執行這項操作。
後續步驟
- 瞭解如何透過 GitHub 建構存放區。
- 瞭解如何在 Compute Engine 上執行藍綠部署。
- 瞭解如何指定其他存放區做為建構作業的依附元件。