我想將 json 檔案中的資料作為變數讀取到我的 azure devops 中。
我看到這篇文章:

在管道運行生命周期中成功設定和獲取變數:

2、如果要永久變數,有兩種情況。
1' 當基于經典管道時,您需要使用這些 REST API 來實作您的要求:
獲取管道定義
更改管道定義
一個可以改變經典管道變數的python腳本:
import json
import requests
org_name = "xxx"
project_name = "xxx"
pipeline_definition_id = "xxx"
personal_access_token = "xxx"
key = 'variables'
var_name = 'BUILDNUMBER'
url = "https://dev.azure.com/" org_name "/" project_name "/_apis/build/definitions/" pipeline_definition_id "?api-version=6.0"
payload={}
headers = {
'Authorization': 'Basic ' personal_access_token
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
json_content = response.text
def get_content_of_json(json_content, key, var_name):
data = json.loads(json_content)
return data[key][var_name].get('value')
def change_content_of_json(json_content, key, var_name):
data = json.loads(json_content)
data[key][var_name]['value'] = str(int(get_content_of_json(json_content,key,var_name)) 1)
return data
json_data = change_content_of_json(json_content, key, var_name)
url2 = "https://dev.azure.com/" org_name "/" project_name "/_apis/build/definitions/" pipeline_definition_id "?api-version=6.0"
payload2 = json.dumps(json_data)
headers2 = {
'Authorization': 'Basic ' personal_access_token,
'Content-Type': 'application/json'
}
response2 = requests.request("PUT", url2, headers=headers2, data=payload2)
2' 如果您的管道基于非經典管道,則需要更改 YAML 檔案定義的變數部分。
在管道運行期間更改 YAML 定義后,您可以按照以下步驟來推遲更改:
將更改推回存盤庫
此外,您可以根據變陣列創建管道并通過 REST API 更新變陣列:
變陣列 - 更新
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/533847.html
