快速入門:整合 Azure Pipelines 與 Bicep
本快速入門說明如何整合 Azure Pipelines 與 Bicep,以進行持續整合和持續部署 (CI/CD)。
其提供部署 Bicep 檔案所需的管線工作簡短簡介。 如果您需要更詳細的設定管線和專案的步驟,請參閱使用 Bicep 和 Azure Pipelines 來部署 Azure 資源。
必要條件
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
您需要一個 Azure DevOps 組織。 如果您沒有帳戶,請免費建立一個。 如果您的團隊已有一個 Azure DevOps 組織,請確定您是所要使用 Azure DevOps 專案的管理員。
您必須完成 Azure 訂閱的服務連線設定。 管線中的工作會以服務主體的身分識別來執行。 如需建立連線的步驟,請參閱建立 DevOps 專案。
您需要定義專案基礎結構的 Bicep 檔案。 此檔案位於存放庫中。
您需要 bicepparam 檔案 ,以定義 bicep 檔案所使用的參數。 此檔案位於存放庫中。
建立管線
從您的 Azure DevOps 組織,依序選取 [管線] 和 [建立管線]。
指定您程式碼的儲存位置。 本快速入門使用 Azure Repos Git。
選取具有您專案程式碼的存放庫。
針對要建立的管線類型,選取 [入門管線]。
部署 Bicep 檔案
您可以使用 Azure 資源群組部署工作或 Azure CLI 工作來部署 Bicep 檔案。
使用 Azure Resource Manager 範本部署工作
注意
從 Azure Resource Manager 範本部署工作的 3.235.0 版起,支援 bicepparam 檔案的使用方式。
注意
使用 bicepparam 時,工作 AzureResourceManagerTemplateDeployment@3
需要提供 Bicep 和 bicepparam 檔案。 Bicep 檔案可以參考模組參考的所有支援位置。 bicepparam 檔案必須參考 語句中的 using
本機 Bicep 檔案。
以下列 YAML 取代您的入門管線。 它會使用 Azure Resource Manager 範本部署工作建立資源群組,並部署 Bicep 和 bicepparam 檔案。
trigger: - main name: Deploy Bicep files parameters: - name: azureServiceConnection type: string default: '<your-connection-name>' variables: vmImageName: 'ubuntu-latest' resourceGroupName: 'exampleRG' location: '<your-resource-group-location>' templateFile: './main.bicep' csmParametersFile: './main.bicepparam' pool: vmImage: $(vmImageName) steps: - task: AzureResourceManagerTemplateDeployment@3 inputs: deploymentScope: 'Resource Group' azureSubscription: '${{ parameters.azureServiceConnection }}' action: 'Create Or Update Resource Group' resourceGroupName: '$(resourceGroupName)' location: '$(location)' templateLocation: 'Linked artifact' csmFile: '$(templateFile)' csmParametersFile: '$(csmParametersFile)' overrideParameters: '-storageAccountType Standard_LRS' deploymentMode: 'Incremental' deploymentName: 'DeployPipelineTemplate'
更新
azureServiceConnection
和location
的值。確認您的存放庫中有有效的
main.bicep
檔案。確認您的存放庫中有包含using語句的有效
main.bicepparam
檔案。選取 [儲存]。 組建管線會自動執行。 返回您的組建管線摘要,並監看狀態。
使用 Azure CLI
注意
az deployment group create 命令只需要 bicepparam 檔案。 using
bicepparam 檔案中的 語句可以以任何支援的位置為目標來參考 Bicep 檔案。 只有在使用 Azure CLI 從本機磁碟路徑時 using
,您的存放庫中才需要 Bicep 檔案。
注意
當您搭配 az deployment group create 命令使用 bicepparam 檔案時,您無法覆寫參數。
以下列 YAML 取代您的入門管線。 它會建立資源群組,並使用 Azure CLI 工作來部署 bicepparam 檔案:
trigger: - main name: Deploy Bicep files parameters: azureServiceConnection: '<your-connection-name>' variables: vmImageName: 'ubuntu-latest' resourceGroupName: 'exampleRG' location: '<your-resource-group-location>' bicepParamFile: './main.bicepparam' pool: vmImage: $(vmImageName) steps: - task: AzureCLI@2 inputs: azureSubscription: '${{ parameters.azureServiceConnection }}' scriptType: bash scriptLocation: inlineScript useGlobalConfig: false inlineScript: | az --version az group create --name $(resourceGroupName) --location $(location) az deployment group create ` --resource-group $(resourceGroupName) ` --parameters $(bicepParamFile) ` --name DeployPipelineTemplate
如需工作輸入的描述,請參閱 Azure CLI 工作。 在實體隔離斷網的雲端使用工作時,您必須將工作的
useGlobalConfig
屬性設定為true
。 預設值是false
。更新
azureServiceConnection
和location
的值。確認您的存放庫中有包含using語句的有效
main.bicepparam
檔案。選取 [儲存]。 組建管線會自動執行。 返回您的組建管線摘要,並監看狀態。
清除資源
如果不再需要 Azure 資源,請使用 Azure CLI 或 Azure PowerShell 模組來刪除快速入門資源群組。
az group delete --name exampleRG