現在、Visual Studio Team Services(Visual Studio Online)でビルドを使用していますが、ビルドステップでビルド変数を設定して、後続のビルドステップで新しい値を使用できるようにしたいと考えています。
明らかに、ビルドを開始する前に設定できますが、後続のビルドステップで変数をレイトバインドすることを検討しています。
スクリプト内で、ps1で次を発行することにより変数を更新できます。
_"##vso[task.setvariable variable=testvar;]testvalue"
_
その後、$(testvar)
を使用して変数を次のスクリプトに渡すことができます
APIのこのドキュメントでは、使用できる##vso
コマンドについて説明しています。
system.debug
をtrue
に設定することを忘れないでください。ミュートされたstdout
のバグがあるため、すべての##vso
が機能していないようです。
https://github.com/Microsoft/vso-agent-tasks/blob/master/docs/authoring/commands.md
PowerShellスクリプトを作成し、ビルドタスクとして参照することができます。次に、PowerShellスクリプト内にこれを追加します。
"##vso[task.setvariable variable=key]value"
その後、すべてのタスクで変数を$(key)として読み取ることができます。変数を保護する場合は、次を使用します。
"##vso[task.setvariable variable=secretVar;issecret=true]value"
そして、次のタスクで$(secretVar)として使用します。