【发布时间】:2022-10-07 10:46:34
【问题描述】:
我们有一种情况,我们需要根据部署组中的目标更改一些变量。
Deployment Stage 运行,根据它的执行目标机器,我们如何传递不同的变量值呢?
在将应用程序设置(替换 URL)文件部署到目标之前,我们需要对其进行转换。
标签: azure-devops azure-pipelines devops azure-pipelines-release-pipeline azure-deployment
我们有一种情况,我们需要根据部署组中的目标更改一些变量。
Deployment Stage 运行,根据它的执行目标机器,我们如何传递不同的变量值呢?
在将应用程序设置(替换 URL)文件部署到目标之前,我们需要对其进行转换。
标签: azure-devops azure-pipelines devops azure-pipelines-release-pipeline azure-deployment
根据您的要求,您需要根据目标机器转换 App Settings 文件中的变量值。
要转换 App Settings 文件中的变量值,您可以使用内置任务:File transform task。
您可以在任务中设置 Pipeline 变量并更新应用程序设置文件的变量。
例如:
- task: FileTransform@1
displayName: 'File Transform: '
inputs:
folderPath: 'folder path'
fileType: json
targetFiles: appsettings.json
要根据执行目标机器设置变量,可以使用预定义变量:Agent.MachineName 和Condition。
例如:
- task: FileTransform@1
displayName: 'File Transform: '
inputs:
folderPath: 'folder path'
fileType: json
targetFiles: appsettings.json
condition: eq(variables['Agent.MachineName'], 'machinename')
【讨论】: