為詹金斯, GitLab CI/CD, GitHub 操作或比特桶管道生成入門管道 - AWS Serverless Application Model

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為詹金斯, GitLab CI/CD, GitHub 操作或比特桶管道生成入門管道

若要產生 Jenkins、 GitLab CI/CD、 GitHub 動作或 Bitbucket 管道的入門管線組態,請依此順序執行下列工作:

  1. 建立基礎結構資

  2. 將您的 Git 儲存庫與您的 CI/CD 系統 Connect

  3. 建立認證物件

  4. 產生管線組態

  5. 將您的管道配置提交到 Git 存儲庫

注意

下列程序會使用兩個AWS SAMCLI指令sam pipeline bootstrapsam pipeline init。有兩個命令的原因是要處理這種使用案例:管理員 (也就是說,需要設定基礎架構AWS資源 (例如 IAM 使用者和角色) 的使用者擁有更多權限,開發人員 (也就是說,只需要設定個別管道權限的使用者,但不需要所需基礎設施AWS資源的使用者)。

步驟 1:建立基礎結構資源

使用的管道AWS SAM需要特定AWS資源,例如 IAM 使用者和具有必要許可的角色、Amazon S3 儲存貯體,以及選擇性使用 Amazon ECR 儲存庫。管道的每個部署階段都必須有一組基礎結構資源。

您可以執行下列命令來協助進行此設定:

sam pipeline bootstrap
注意

針對管線的每個部署階段執行上一個命令。

您必須為管線的每個部署階段擷取管道使用者的AWS認證 (金鑰 ID 和秘密金鑰),因為後續步驟需要這些認證。

步驟 2:將您的 Git 儲存庫與您的 CI/CD 系統 Connect

您必須將 Git 儲存庫連接到 CI/CD 系統,以便 CI/CD 系統能夠存取您的應用程式原始程式碼以進行建置和部署。

注意

如果您使用下列其中一種組合,則可略過此步驟,因為連接會自動為您完成:

  1. GitHub GitHub 存放庫的動作

  2. GitLab 含儲存庫的 CI/CD GitLab

  3. 具有比特桶存儲庫的比特桶管道

若要將 Git 儲存庫與 CI/CD 系統連線,請執行下列其中一個動作:

  • 如果您使用的是詹金斯,請參閱詹金斯文檔「添加分支源」。

  • 如果您使用的是 GitLab CI/CD 和 Git 儲存庫 GitLab,請參閱「連接外部儲存庫」的GitLab文件

步驟 3:創建憑據對象

每個 CI/CD 系統都有自己的方式來管理 CI/CD 系統存取 Git 儲存庫所需的認證。

若要建立必要的認證物件,請執行下列其中一個動作:

  • 如果您使用的是 Jenkins,請創建一個存儲密鑰 ID 和密鑰的單個「憑據」。按照在構建詹金斯管道與AWS SAM博客的說明,在配置詹金斯部分。您將需要「憑據 ID」進行下一步。

  • 如果您使用的是 GitLab CI/CD,請創建兩個「受保護的變量」,每個密鑰 ID 和密鑰一個。按照GitLab 文檔中的說明進行操作-下一步需要兩個「可變密鑰」。

  • 如果您使用的是 GitHub 動作,請建立兩個「加密密碼」,每個金鑰和私密金鑰各一個。按照GitHub文檔中的說明進行操作-下一步需要兩個「秘密名稱」。

  • 如果您使用的是 Bitbucket 管道,請創建兩個「安全變量」,每個密鑰 ID 和密鑰一個。按照變量和秘密中的說明進行操作-下一步需要兩個「秘密名稱」。

步驟 4:產生管線組態

若要產生管線組態,請執行下列命令。您將需要輸入您在上一個步驟中創建的憑據對象:

sam pipeline init

第 5 步:將您的管道配置提交到 Git 存儲庫

為了確保您的 CI/CD 系統知道您的管線組態,並在確認變更時執行此步驟是必要的。

進一步了解

如需使用設定 CI/CD 管線的實際操作範例GitHub Actions,請參閱完整研討會GitHub中的 CI/CD 與。AWS SAM