Azure devops 将bash命令输出设置为azure yml变量
我正在使用Azure DevOps,我需要将bash命令的返回设置为一些变量,例如,我有以下内容:Azure devops 将bash命令输出设置为azure yml变量,azure-devops,yaml,azure-pipelines,Azure Devops,Yaml,Azure Pipelines,我正在使用Azure DevOps,我需要将bash命令的返回设置为一些变量,例如,我有以下内容: variables: VERSION: 7.2 # works fine FILE_VERSION: ${{cat public/VERSION}} # syntax error 我尝试了${}的一些变体,但没有成功,我找不到正确的语法,但我认为这一定是可能的。您应该使用 像这样: 步骤: -狂欢节:| echo vso[task.setvariable=文件\u
variables:
VERSION: 7.2 # works fine
FILE_VERSION: ${{cat public/VERSION}} # syntax error
我尝试了${}的一些变体,但没有成功,我找不到正确的语法,但我认为这一定是可能的。您应该使用
像这样:
步骤:
-狂欢节:|
echo vso[task.setvariable=文件\u版本]$cat public/VERSION
你应该使用一个
像这样:
步骤:
-狂欢节:|
echo vso[task.setvariable=文件\u版本]$cat public/VERSION
您需要分两步完成此操作 步骤1:首先设置静态值 步骤2:创建步骤以计算值 注意:这仅适用于后续步骤
- bash: |
FILE_VERSION="$(cat public/VERSION)"
echo "##vso[task.setvariable variable=FILE_VERSION]$FILE_VERSION"
资源:
您需要分两步完成此操作 步骤1:首先设置静态值 步骤2:创建步骤以计算值 注意:这仅适用于后续步骤
- bash: |
FILE_VERSION="$(cat public/VERSION)"
echo "##vso[task.setvariable variable=FILE_VERSION]$FILE_VERSION"
资源:
在定义变量时,我们不应该使用cat命令。该命令应位于任务/步骤中 根据您的描述,我假设您试图将public/7.2的内容传递给FILE\u VERSION变量。这是我的测试: 1.Azure Devops Git回购: 2.定义版本变量:
variables:
VERSION: 7.2
运行cat命令并执行以下操作:
整个亚马尔:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
VERSION: 7.2
steps:
- bash: |
FILE_VERSION=$(cat public/$(VERSION))
echo "##vso[task.setvariable variable=FILE_VERSION]$FILE_VERSION"
#Use second bash task to test the variable.
- task: Bash@3
inputs:
targetType: 'inline'
script: |
echo $(FILE_VERSION)
在定义变量时,我们不应该使用cat命令。该命令应位于任务/步骤中 根据您的描述,我假设您试图将public/7.2的内容传递给FILE\u VERSION变量。这是我的测试: 1.Azure Devops Git回购: 2.定义版本变量:
variables:
VERSION: 7.2
运行cat命令并执行以下操作:
整个亚马尔:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
VERSION: 7.2
steps:
- bash: |
FILE_VERSION=$(cat public/$(VERSION))
echo "##vso[task.setvariable variable=FILE_VERSION]$FILE_VERSION"
#Use second bash task to test the variable.
- task: Bash@3
inputs:
targetType: 'inline'
script: |
echo $(FILE_VERSION)