IBM Cloud Docs
配置 GitHub

配置 GitHub

GitHub 是 Git 儲存庫的 Web 型管理服務。 您可以同時具有儲存庫的本端和遠端副本,方便進行分工合作。

GitHub Enterprise 是 Git 儲存庫的內部部署 Web 型管理服務。

GitHub Issues 是一項追蹤工具,可將您的工作和方案都保留在一個位置。 它與您的開發儲存庫整合,因此您可以專注於重要作業。

您可以將 GitHub 配置為工具鏈中的工具整合,以在 GitHub.com 或公司 GitHub Enterprise 實例的新或現有儲存庫中管理原始碼。 透過 Wiki、問題追蹤及取回要求來參與社交編碼。

如果您要在建立工具鏈時配置此工具整合,請遵循下列步驟:

  1. 如果您是將原始碼儲存至 GitHub 儲存庫,請按一下「可配置的整合」區段中的 GitHub。 如果您要在 IBM Cloud Public 上配置此工具整合,則必須透過選擇 OAuth個人存取記號來授權 IBM Cloud 存取 GitHub。

    • 如果您選擇 OAuth,請按一下 授權,以移至 GitHub 網站。 如果您沒有作用中的 GitHub 階段作業,則系統會提示您登入。 按一下授權應用程式,以容許 IBM Cloud 存取 GitHub 帳戶。 如果您有作用中的 GitHub 階段作業,但最近未輸入過密碼,則系統可能會提示您輸入 GitHub 密碼進行確認。

    • 如果您選擇「個人存取記號」,則必須輸入個人存取記號,以用來授權 GitHub 複製儲存庫並代表您執行其他動作。 如果您沒有個人存取記號,則可以遵循 GitHub 網站上的說明文件來建立個人存取記號。 確定您的個人存取記號具有 repodelete_reporead:userworkflow 權限。

  2. 如果您在自己的GitHub Enterprise伺服器上使用儲存庫,請在「可設定整合」部分中按一下「自訂伺服器」

    a. 鍵入自訂 GitHub 伺服器的標題,指定伺服器的根 URL,然後輸入個人存取記號。

    b. 如果您沒有個人存取記號,則可以遵循 GitHub 網站上的說明文件來建立個人存取記號。

    c. 如果您的GitHub伺服器是氣隙的或無法在公共互聯網上訪問,您可以連接並整合Delivery Pipeline Private Worker 以在您自己的Kubernetes基礎設施上運行,以訪問內部或本地資源。 有關Delivery Pipeline Private Workers 的更多信息,請參閱 使用Delivery Pipeline Private Workers

  3. 檢閱 GitHub 儲存庫的預設目標儲存庫位置。 那些儲存庫是從範例儲存庫中複製而來。 必要的話,請變更目標儲存庫的名稱。

如果您有工具鏈,並且要新增此工具整合到其中,請遵循下列步驟:

  1. 在IBM Cloud控制台中,點選選單圖示漢堡圖示>平台自動化>工具鏈。 在工具鏈頁面上,按一下工具鏈以開啟其概述頁面。 或者,在應用程式之「概觀」頁面的「持續交付」卡片上,按一下檢視工具鏈。 然後,按一下概觀

  2. 點選新增工具

  3. 在「工具整合」區段中,按一下 GitHub

  4. 按一下您要使用的 GitHub 伺服器。

  5. 如果您有 GitHub 或 GitHub Enterprise 儲存庫並且想要使用它,請針對儲存庫類型按一下現有,然後鍵入 URL。

  6. 如果您要使用新的 GitHub 或 GitHub Enterprise 儲存庫,請鍵入儲存庫的名稱,並鍵入您所複製或分出之儲存庫的 URL,然後選取儲存庫類型:

    a. 若要建立空的儲存庫,請按一下新建

    b. 若要建立 GitHub 或 GitHub Enterprise 儲存庫的副本,請按一下複製

    c. 若要分出 GitHub 或 GitHub Enterprise 儲存庫,以透過取回要求來提出變更,請按一下分出

  7. 如果您是具有升級帳戶的 GitHub.com 使用者,或者已選取 GitHub Enterprise 伺服器,並且希望在該伺服器上建立新的專用儲存庫,請選取使此儲存庫成為專用勾選框。

  8. 如果要使用 GitHub 的 Issues 進行問題追蹤,請選取啟用 GitHub Issues 勾選框。

  9. 若要透過建立確定的標籤和註解以及確定所參照之問題的標籤和註解來追蹤程式碼變更部署,請選取追蹤程式碼變更部署勾選框。 有關更多信息,請參閱 使用工具鏈追蹤程式碼的部署位置

  10. 按一下建立整合

  11. 從工具鏈的「概觀」頁面中,在 儲存庫 卡上,按一下您要使用的 GitHub 或 GitHub Enterprise 儲存庫。 根據您已選取的儲存庫,會開啟 GitHub 網站或公司的 GitHub Enterprise 儲存庫,您可以在其中檢視儲存庫的內容。

  12. 如果您已啟用 GitHub Issues,請按一下 GitHub Issues 將它開啟。 您可以將此 GitHub Issues 實例用於整個工具鏈,即使工具鏈包含多個 GitHub 或 GitHub Enterprise 儲存庫。

    如果您沒有要鏈結之儲存庫的管理者專用權,則整合會受到限制,因為您無法使用 Webhook。 需要有 Webhook,才能在將確定推送至儲存庫時自動執行管線。 如果沒有 Webhook,您必須手動啟動管線。

使用 API 來配置 GitHub

當您 建立讀取更新 工具整合時,GitHub 工具整合支援下列配置參數,您可以與 Toolchain HTTP API 及 SDK 搭配使用。

您必須在要求內文中以 githubconsolidated 值指定 tool_type_id 內容。

GitHub工具整合參數
參數 用法 類型 Terraform 引數 說明
api_root_url 選用,可更新 字串 api_root_url GitHub 伺服器的 API 根目錄 URL。
api_token 選用,可更新 密碼 api_token 個人存取記號 (PAT)。 只有在 auth_type 設為 pat 時,才需要此參數,否則會忽略它。
AUTH_TYPE 選用,可更新 字串 AUTH_TYPE 設定用來存取 Git 提供者的鑑別方法。
auto_init 可選,不可變,Default: false 布林 auto_init 將此值設為 true,以使用 Readme 檔來起始設定此儲存庫。 只有在您建立儲存庫時,才會使用此參數。
blind_connection 可選,可更新,Default: false 布林 blind_connection 將此值設為 true 表示伺服器無法在公用網際網路上定址。IBM Cloud 無法驗證您提供的連線詳細資料。 將停用需要 Git 伺服器的 API 存取權的特定功能。 Delivery Pipeline 只會使用具有 Git 伺服器網路存取權的專用工作者節點來運作。
default_branch 選用,可更新 字串 default_branch Git 儲存庫的預設分支。
enable_traceability 可選,可更新,Default: false 布林 enable_traceability 將此值設為 true 以透過在提交、拉取請求和引用的問題上建立標記、標籤和註釋來追蹤程式碼變更的部署。
git_id 選用,不可變 字串 git_id 針對 github.com,將此值設為 github,或設為自訂 GitHub Enterprise 伺服器的 GUID。
has_issues 可選,可更新,Default: true 布林 toolchain_issues_enabled 將此值設為 true,以啟用 GitHub 儲存庫上的問題,並將 Issues 工具卡新增至工具鏈。 將值設為 false 可從工具鏈中移除工具整合卡。 此設定不會影響是否在 GitHub 儲存庫本身啟用問題。
integration_owner 選用,可更新 字串 integration_owner 選取執行 Git 作業的使用者身分。
owner_id 選用,不可變 字串 owner_id 擁有儲存庫的 GitHub 使用者或組織。 當您建立儲存庫或複製或分出儲存庫時,需要此參數。 當您鏈結至現有儲存庫時,會計算此值。
private_repo 可選,不可變,Default: false 布林 private_repo 將此值設為 true,以在您建立儲存庫或複製或分出儲存庫時將儲存庫設為專用。 當您鏈結至現有儲存庫時,不會使用此參數。
repo_id 選用,不可變 字串 repo_id GitHub 儲存庫的 ID。
repo_name 選用,不可變 字串 repo_name 要建立的GitHub儲存庫的名稱。 當您建立儲存庫或複製或分出儲存庫時,需要此參數。 當您鏈結至現有儲存庫時,會計算此值。
repo_url 選用,不可變 字串 repo_url 此工具整合的 GitHub 儲存庫 URL。 鏈結至現有儲存庫時需要此參數。 當您建立儲存庫或複製或分出儲存庫時,會計算此值。
root_url 選用,可更新 字串 root_url 伺服器的根 URL。例如 https://github.example.com
source_repo_url 選用,不可變 字串 source_repo_url 您正在分出或複製之儲存庫的 URL。 當您建立子處理程序或複製儲存庫時,需要此參數。 當您建立儲存庫或鏈結至現有儲存庫時,不會使用它。
title 選用,可更新 字串 title 伺服器的標題。例如,我的 GitHub Enterprise 伺服器
token_url 選用,可更新 字串 token_url 用來向 GitHub 伺服器授權的記號 URL。
類型 必要,不可變 字串 類型 要執行以起始設定新工具整合的作業。 使用 new 來建立 Git 儲存庫,clone 將現有儲存庫複製到新的 Git 儲存庫,fork 以分出現有 Git 儲存庫,或者 link 以鏈結至現有 Git 儲存庫。