Création d'un nouveau build Azure DevOps et mise à jour de ses variables avec l'API REST.
Azure DevOps est une suite complète d'outils et de services de développement conçus pour aider les équipes à créer et à livrer des logiciels plus rapidement et plus efficacement.. L'une des fonctionnalités clés d'Azure DevOps est son système de génération, qui permet aux équipes d'automatiser la construction, test, et processus de déploiement de leur logiciel.
Dans cet article, nous explorerons comment créer une nouvelle version Azure DevOps et mettre à jour ses variables à l'aide de l'API REST. Nous utiliserons un exemple d'extrait de code qui montre comment créer une nouvelle version à l'aide de cURL, mais vous pouvez utiliser n'importe quel langage de programmation prenant en charge les appels d'API REST.
La première étape de la création d'une nouvelle build Azure DevOps consiste à définir ses propriétés, tels que la définition de build et les paramètres de build. La définition de build définit les étapes de build, qui peut inclure des tâches comme la compilation de code, exécuter des tests, et créer des artefacts. Les paramètres de build sont des variables utilisées par les étapes de build pour personnaliser le processus de build..
Pour créer une nouvelle build à l'aide de l'API REST, vous devez envoyer une requête POST au Point de terminaison de l’API Azure DevOps qui crée des builds. L'extrait de code suivant montre comment créer une nouvelle build à l'aide de cURL:
curl -X POST "https://dev.azure.com/{organization}/{project}/_apis/build/builds?api-version=7.0" \
-H "Content-Type: application/json" \
-d '{
"definition": {
"id": {definition_id}
},
"parameters": "{\"{parameter_name}\":\"{parameter_value}\"}"
}'
Exemple de travail avec PAT:
curl -X POST "https://{username}:{PAT}@dev.azure.com/{organization}/{project}/_apis/build/builds?api-version=7.0" \
-H "Content-Type: application/json" \
-d '{
"definition": {
"id": {definition_id}
},
"parameters": "{\"{parameter_name}\":\"{parameter_value}\"}"
}'
Décomposons cet extrait de code:
- Le
-X POST
le flag spécifie que nous voulons envoyer une requête POST. - Le point de terminaison de l'API pour la création de builds est https://dev.azure.com/{organisation}/{projet}/_apis/build/builds?version API = 7.0, où {organisation} est le nom de votre Azure DevOps organisation et {projet} est le nom de votre projet. Le
api-version
le paramètre spécifie la version de l'API que nous voulons utiliser. - Le
-H "Content-Type: application/json"
l'indicateur spécifie que nous envoyons des données JSON dans le corps de la requête. - Le corps de la requête est un objet JSON qui contient les propriétés suivantes:
definition
: un objet qui spécifie la définition de build. Leid
la propriété spécifie l'ID de la définition de build.parameters
: une chaîne au format JSON qui spécifie les paramètres de construction. Le{parameter_name}
et{parameter_value}
les espaces réservés doivent être remplacés par le nom et la valeur réels du paramètre, respectivement.
Dans l'exemple d'extrait de code, nous créons une nouvelle build en utilisant la définition de build avec ID 15 et mettre à jour son NUMBER_OF_WORKERS
paramètre avec la valeur d'une variable 2_NUMBER_OF_WORKERS
, qui peut être remplacée par une valeur réelle au moment de l'exécution. Nous fixons également le NUMBER_OF_WORKERS2
paramètre à une valeur statique de 5.
Pour mettre à jour une variable de build à l'aide de l'API REST, vous devez envoyer une requête PATCH au point de terminaison de l'API qui met à jour les variables de build. L'extrait de code suivant montre comment mettre à jour une variable de build à l'aide de cURL:
curl -X PATCH "https://dev.azure.com/{organization}/{project}/_apis/build/builds/{build_id}/variables?api-version=7.0" \
-H "Content-Type: application/json" \
-d '{
"variables": {
"{variable_name}": {
"value": "{new_value}"
}
}
}'
Décomposons cet extrait de code:
- Le
-X PATCH
le flag spécifie que nous voulons envoyer une requête PATCH. - Le point de terminaison de l'API pour la mise à jour des variables de build est `https://dev.azure.com/{organisation}/{projet}/_apis/build/builds/{build_id}/variables?version API = 7.0