🌊
Azure PilelinesでJSONファイルから変数を読み込む
Pipelineの中で、条件に応じて決まった変数をロードしたいと思って、やり方を整理しました。
たとえば「Release-ModuleName-Version」みたいなタグを張られたときに、ModuleNameに該当するアプリをビルドしたいみたいな用途です。
- pwsh: |
$variables = Get-Content $(Build.SourcesDirectory)\$(module).json | ConvertFrom-Json -AsHashtable
$variables.GetEnumerator() | ForEach-Object {
$name = $_.key
$value = $_.value
Write-Host "##vso[task.setvariable variable=$name]$value"
Write-Host "##[debug]Debug $name=$value"
}
displayName: JSONファイルから変数をロード
フラットなJSONファイル限定ですが、こんな感じでいけます。
構造化されたものを動的に読みたい場合は、サードパーティのTaskとかを探したほうが良いかも?
つかったことはないですが、以下のようなパッケージを見かけました。
以上です。
Discussion