使用 GitHub Actions 在 CI/CD 流程中部署 ARM 範本

已完成

GitHub Actions 能協助小組在現今的市場上具有敏捷和競爭力。 其協助您將系統開發或解決方案開發生命週期的工作自動化。

假設您與小組正在開發解決方案,這需要利用 Azure 環境中的大量資源。 您必須確保能夠快速地自動部署該解決方案,並納入持續整合和持續傳遞 (CI/CD) 管線中。 如此一來,即可將專案基礎結構的建立及終止作業自動化。 只要將資源管理納入 CI/CD 管線中,即可採用基礎結構即程式碼 (IaC) 將 IT 工作自動化。

適當的 CI/CD 管線也可讓您使用工具 (例如 Azure Resource Manager (ARM) 範本測試工具組,簡稱 arm-ttk),將測試步驟納入部署工作。 如需此工具組的詳細資訊,請參閱使用假設和測試工具組驗證部署 (英文)。

建議在管線中納入測試,以專注於撰寫。 arm-ttk 工具組會執行一系列的測試,在部署期間驗證範本,以免發生問題。

有數種工具可協助您達成這些目標。 因為程式碼存放庫已使用 GitHub,所以您決定要調查 GitHub Actions,看看其是否能提供所需的自動化。

本課程模組會將 GitHub Actions 作為部署 ARM 範本的方式介紹給您。

GitHub Actions 是什麼?

GitHub Actions 是封裝的指令碼,其可將 GitHub 開發工作流程中的工作自動化。

GitHub Actions 能讓您直接在儲存 ARM 範本的 GitHub 存放庫中,建立軟體開發生命週期的自訂工作流程。 YAML 檔案會定義工作流程。

工作流程有一或多個作業。 每個作業都包含一組執行個別工作的步驟。 步驟可以執行命令或使用動作。 您可建立自己的動作,或使用 GitHub 社群所共用的動作,並視需要加以自訂。

部署 ARM 範本的基本工作流程需要至少三個步驟:

  1. 查看範本檔案。
  2. 登入Azure。
  3. 部署範本。

Azure 登入動作會使用服務主體來驗證 Azure。 CI/CD 工作流程的主體需要有正確的內建參與者才能部署 Azure 資源。