Azure管道ARM部署任务YAML多行



是否可以在Azure Pipelines任务中的YAML中使用多行?例如,对于ARM部署任务,存在overrideParameters属性。如果可以将其拆分为几行,而不是将所有内容放在一行,那就太好了:

- task: AzureResourceManagerTemplateDeployment@3
displayName: 'ARM deploy MyFunctionAPP'
inputs:
deploymentScope: 'Resource Group'
azureResourceManagerConnection: ${{ parameters.serviceConnection }}
subscriptionId: ${{ parameters.subscriptionId }}
action: 'Create Or Update Resource Group'
resourceGroupName: ${{ parameters.resourceGroupName }}
location: 'West Europe'
templateLocation: 'Linked artifact'
csmFile: '$(ARMtemplatesPath)MyFunctionAPPtemplate.json'
csmParametersFile: '$(ARMtemplatesPath)MyFunctionAPPparameters.json'
deploymentMode: 'Incremental'
overrideParameters: '-environment_name ${{ parameters.environmentName }} -vnetAddressPrefix ${{ parameters.vnetAddressPrefix }} -subnet1Prefix ${{ parameters.subnet1Prefix }} -APIkey ${{ parameters.APIkey }} -queueName ${{ parameters.queueNameMyQueue }} -SendGridAPIkey ${{ parameters.SendGridAPIkey }} -StorageConnectionAppSetting ${{ parameters.StorageConnectionAppSetting }}'

是否可以在多行上拆分overrideParameters值?

这对我很有效:

overrideParameters: >-
-environment_name "${{ parameters.environmentName }}" 
-vnetAddressPrefix "${{ parameters.vnetAddressPrefix }}" 
-subnet1Prefix "${{ parameters.subnet1Prefix }}"
-APIkey "${{ parameters.APIkey }}"
-queueName "${{ parameters.queueNameMyQueue }}" 
-SendGridAPIkey "${{ parameters.SendGridAPIkey }}"
-StorageConnectionAppSetting "${{ parameters.StorageConnectionAppSetting }}"

因此,在单行上使用>-,然后使用双引号将设置值括起来是可行的。

是否可以在多条线路?

根据文档表达式,我们可以对多行字符串使用管道字符(|(:

- task: AzureResourceManagerTemplateDeployment@3
displayName: 'ARM deploy MyFunctionAPP'
inputs:
deploymentScope: 'Resource Group'
azureResourceManagerConnection: ${{ parameters.serviceConnection }}
subscriptionId: ${{ parameters.subscriptionId }}
action: 'Create Or Update Resource Group'
resourceGroupName: ${{ parameters.resourceGroupName }}
location: 'West Europe'
templateLocation: 'Linked artifact'
csmFile: '$(ARMtemplatesPath)MyFunctionAPPtemplate.json'
csmParametersFile: '$(ARMtemplatesPath)MyFunctionAPPparameters.json'
deploymentMode: 'Incremental'
overrideParameters: |
-environment_name ${{ parameters.environmentName }}
-vnetAddressPrefix ${{ parameters.vnetAddressPrefix }}
-subnet1Prefix ${{ parameters.subnet1Prefix }}
-APIkey ${{ parameters.APIkey }}
-queueName ${{ parameters.queueNameMyQueue }}
-SendGridAPIkey ${{ parameters.SendGridAPIkey }}
-StorageConnectionAppSetting ${{ parameters.StorageConnectionAppSetting }}

您可以查看此线程以了解更多详细信息。

最新更新