A criar a libertação usando a API de Repouso do polvo
Posso criar um lançamento usando octo.exe, mas não tenho idéia de como fazer isso usando a API de descanso.
Eu passei pelo {[[0]}, mas não consigo descobrir como criar um lançamento. Esta é a API REST que fornece esse recurso??
3 answers
Eu não usei o polvo, mas tanto quanto sei você tem que fazer um pedido HTTP POST para um URL como este:
http://localhost:8080/api/projects/1/releases
No seu corpo de Pedidos, indica os mesmos parâmetros que o faria usando a ferramenta da linha de comandos, mas tem de os codificar como JSON.
A fim de criar uma versão, você deve fazer um pedido {[[2]} para o servidor Octo.
Https://myoctoserver:port/api/releases
Fornecer os seguintes cabeçalhos:
- x-Octopus-ApiKey: API-xxxxxxxxxx
- conteúdo-Tipo: application / json
O corpo do pedido deve ser JSON
. Abaixo está um exemplo:
{
"Version": "2017.02.25.183053" ,
"ProjectId": "MyProject" ,
"ChannelId": "DefaultOrOtherChannelId
}
As propriedades Version
e ProjectId
são necessárias. O ID do canal é opcional. No entanto, se você tiver mais do que um canal ou se nenhum canal no seu projeto estiver marcado como padrão, então você deve incluir ChannelId
também.
Exemplo De Curva
A amostra abaixo foi bem sucedida.
BODY='{"ProjectId":"'$PROJECT_ID'","ChannelId":"Channels-1","Version":"'$VERSION'","SelectedPackages":[{"StepName":"$STEP_NAME1","Version":"'$VERSION'"},{"StepName":"$STEP_NAME2","Version":"'$VERSION'"}]}'
curl -X POST --write-out %{http_code} --silent --output /dev/null -H "X-Octopus-ApiKey:$API_KEY" -H "Content-Type:application/json" -d $BODY "https://octopus.example.com/api/releases"
Notas
Para encontrar a base de dados do polvo. As identificações serão parecidas comProjects-1
ou Channel-1
octo create-release --project HelloWorld --version 1.0.3 --server http://octopus/ --apiKey API-ABCDEF123456
Octo.exe incluído como parte de Tentáculo ou instalação de servidor, polvo também fornece-lo como um utilitário seperate: http://octopusdeploy.com/downloads