Azure Pipeline:从存储库中的 json 文件读取值并将其存储在管道变量中(无 powershell)
Azure Pipeline: Read values from json file in the repo and store it in pipeline variable (without powershell)
我有一个 azure 存储库,每次提交到任何分支都会触发 azure 管道。
在这个 repo 上有一个 json 文件 file.json
。
样本内容:
{
"key1": "value1",
"key2": "value2"
}
如何从管道中的 json 文件中读取值并将它们存储在管道变量中? (我想避免 powershell)
我找到了解决办法。首先,您使用以下语法创建一个 bash 操作:
- bash: |
echo "##vso[task.setvariable variable=varName;]$(jq .key1 file.json)"
name: setVarFromJsonFileValue
使用jq .key1 file.json
可以读取key1
的值。
jq
是一个 cli 工具,似乎是预装的。
现在 value1
存储在管道变量 varName
中,您可以像这样在整个作业中访问它:
- script: |
echo $(varName)
displayName: output value of var
输出为value1
。
我有一个 azure 存储库,每次提交到任何分支都会触发 azure 管道。
在这个 repo 上有一个 json 文件 file.json
。
样本内容:
{
"key1": "value1",
"key2": "value2"
}
如何从管道中的 json 文件中读取值并将它们存储在管道变量中? (我想避免 powershell)
我找到了解决办法。首先,您使用以下语法创建一个 bash 操作:
- bash: |
echo "##vso[task.setvariable variable=varName;]$(jq .key1 file.json)"
name: setVarFromJsonFileValue
使用jq .key1 file.json
可以读取key1
的值。
jq
是一个 cli 工具,似乎是预装的。
现在 value1
存储在管道变量 varName
中,您可以像这样在整个作业中访问它:
- script: |
echo $(varName)
displayName: output value of var
输出为value1
。