Azure 管道设置 npm 版本变量并在 Git 标签中使用

问题描述 投票:0回答:1

我试图从 package.json 获取 npm 版本并用它来标记我的 git 存储库,但似乎不起作用,因为该变量在设置之前似乎已“预加载”。

我创建了一个命令行任务来执行此操作:

npmVersion=$(node -p "require('./package.json').version")
echo '##vso[task.setvariable variable= npmVersion]$npmVersion'

然后,在获取源中,我设置了我的存储库、分支和标签格式,如下所示:

但是输出标签是这样的:

我该怎么办?

谢谢

azure npm azure-devops azure-pipelines cicd
1个回答
0
投票

确保您的命令行任务出现在获取源步骤之后。

您还可以尝试内联脚本步骤来验证它是否在命令中保持不变。

steps:
- script: |
    npmVersion=$(node -p "require('./package.json').version")
    echo "##vso[task.setvariable variable=npmVersion]$npmVersion"
  displayName: 'Set npm version'

- script: |
    echo "dev_$(npmVersion)_$(build.buildNumber)"
  displayName: 'Print source version'
© www.soinside.com 2019 - 2024. All rights reserved.