Как поставить в очередь сборку с помощью API-интерфейса REST Azure DevOps в Python? - PullRequest
0 голосов
/ 20 сентября 2019

Я хочу иметь возможность ставить в очередь сборку Azure DevOps с использованием python.

У меня есть следующий код:

params_dict = {
        "id" : [Build ID #]
    }

url = "https://dev.azure.com/[my_organization]/[my_project]/_apis/build/builds?api-version=5.1"

requests.post(url, json = params_dict, auth=(username, password))

Однако, когда я запускаю этот код, я получаю:

{'$id': '1',
 'errorCode': 0,
 'eventId': 0,
 'innerException': None,
 'message': 'Value cannot be null.\r\nParameter name: build.Definition',
 'typeKey': 'ArgumentNullException',
 'typeName': 'System.ArgumentNullException, mscorlib'}

Я пытался использовать build.Definition в params_dict, definition и т. Д. Кажется, перестановка не работает.Я получаю одинаковую ошибку для них всех.

Какой ключ мне нужно дать в моем params_dict, чтобы эта работа работала?

1 Ответ

0 голосов
/ 20 сентября 2019

После долгих проб и ошибок я определил правильный формат для params_dict:

params_dict = {
    "definition": {
        "id": [Build ID #]
    } 
}

Используя этот словарь, сборка успешно ставится в очередь.

...