Criando um novo build do Azure DevOps e atualizando suas variáveis com a API REST.
O Azure DevOps é um conjunto abrangente de ferramentas e serviços de desenvolvimento projetados para ajudar as equipes a criar e enviar software com mais rapidez e eficiência. Um dos principais recursos do Azure DevOps é seu sistema de construção, que permite que as equipes automatizem a construção, teste, e processo de implantação de seu software.
Neste artigo, exploraremos como criar uma nova compilação do Azure DevOps e atualizar suas variáveis usando REST API. Usaremos um trecho de código de exemplo que demonstra como criar uma nova compilação usando cURL, mas você pode usar qualquer linguagem de programação que suporte chamadas de API REST.
A primeira etapa na criação de uma nova compilação do Azure DevOps é definir suas propriedades, como a definição de compilação e os parâmetros de compilação. A definição de compilação define as etapas de compilação, que pode incluir tarefas como compilar código, executando testes, e criando artefatos. Os parâmetros de construção são variáveis usadas pelas etapas de construção para personalizar o processo de construção.
Para criar uma nova compilação usando a API REST, você precisa enviar uma solicitação POST para o Ponto de extremidade da API do Azure DevOps que cria builds. O trecho de código a seguir demonstra como criar uma nova compilação usando 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}\"}"
}'
Exemplo de trabalho com 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}\"}"
}'
Vamos analisar este trecho de código:
- O
-X POST
flag especifica que queremos enviar uma solicitação POST. - O endpoint da API para criar builds é https://dev.azure.com/{organização}/{projeto}/_apis/build/builds?versão da API = 7.0, onde {organização} é o nome do seu Azure DevOps organização e {projeto} é o nome do seu projeto. O
api-version
parâmetro especifica a versão da API que queremos usar. - O
-H "Content-Type: application/json"
flag especifica que estamos enviando dados JSON no corpo da solicitação. - O corpo da solicitação é um objeto JSON que contém as seguintes propriedades:
definition
: um objeto que especifica a definição de compilação. Oid
propriedade especifica o ID da definição de compilação.parameters
: uma string formatada em JSON que especifica os parâmetros de compilação. O{parameter_name}
e{parameter_value}
os espaços reservados devem ser substituídos pelo nome e valor reais do parâmetro, respectivamente.
No trecho de código de exemplo, estamos criando uma nova compilação usando a definição de compilação com ID 15 e atualizando seu NUMBER_OF_WORKERS
parâmetro com o valor de uma variável 2_NUMBER_OF_WORKERS
, que pode ser substituído por um valor real em tempo de execução. Também estamos definindo o NUMBER_OF_WORKERS2
parâmetro para um valor estático de 5.
Para atualizar uma variável de build usando a API REST, você precisa enviar uma solicitação PATCH para o endpoint da API que atualiza as variáveis de compilação. O trecho de código a seguir demonstra como atualizar uma variável de compilação usando 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}"
}
}
}'
Vamos analisar este trecho de código:
- O
-X PATCH
flag especifica que queremos enviar uma solicitação PATCH. - O endpoint da API para atualizar variáveis de compilação é `https://dev.azure.com/{organização}/{projeto}/_apis/build/builds/{build_id}/variáveis?versão da API = 7.0