azure-devops - 如何从 YAML 文件传递 Azure ARM 模板对象值?
问题描述
Azure ARM 模板 parameter.json 文件具有以下对象属性。
"appInsightsObject": {
"value": {
"name": "appInsghtName",
"id": "appInsgID"
}
}
我必须从 build.yaml 文件中替换这些值。我的 build.yaml 文件有以下内容
- task: AzureResourceManagerTemplateDeployment@3
displayName: APIM Development CI
inputs:
ConnectedServiceName: My-Service-Name
subscriptionName: My-Subs-Values
resourceGroupName: My-Rg-Name
location:$(locationName)
csmFile: template.json
csmParametersFile: parameters.json
overrideParameters: '-appInsightsObject.name $(appInsightNameValue) '
如何传递 appInsightsObject 对象值?
更新:
我找到了一种将值作为 JSON 对象传递的方法,例如 '{"name":"name-goes-here", "id":"id-value-goes-here"}'。有没有更好的选择?
overrideParameters: '-appInsightsObject $(appInsightValue) '
解决方案
这个工作并允许为任何类型的对象单独存储值。
overrideParameters: '-appInsightsObject {"name": "$(dev.insightName)","id": "$(dev.insightId)"} '