Azure DevOps パイプラインでビルド変数を使用することに行き詰まっています。
私が達成しようとしていること: 現在のタイムスタンプで変数を作成し、この変数を使用してビルド名とアーティファクト バージョンを設定します (追跡可能性のため)。
現在の構成では、powershell スクリプトは正常に実行されますが、変数 foo は npm ステップで空です (以下の yml コードを参照)。
variables:
system.debug: true
name: $(TeamProject)_$(Build.DefinitionName)_$(SourceBranchName)_$(Date:yyyyMMdd)-$(Hours)$(Minutes)$(Seconds)
[...]
steps:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: 'Write-Host "Setting up the date time for build variable"
$date=$(Get-Date -format yyyyMMdd-Hmmss)
Write-Host "##vso[task.setvariable variable=foo]$date"'
- task: Npm@1
inputs:
command: 'custom'
customCommand: '--no-git-tag-version version prerelease --preid=dev-$(foo)'
displayName: 'npm version prerelease'
私の質問: npm ステップで変数 foo (powershell で導入) が空なのはなぜですか? 自己導入変数 foo を使用してビルド名を設定する方法はありますか (ビルド名とアーティファクト バージョンに同じタイムスタンプを使用するため)?