Esta página fornece uma referência para as ações de job do Jenkins disponíveis no catálogo de ações de automação de fluxo de trabalho. Use essas ações para acionar e gerenciar builds do Jenkins.
Pré-requisitos
Antes de usar as ações de job do Jenkins na automação de fluxo de trabalho, você precisa:
- Um servidor Jenkins acessível a partir do New Relic Workflow Automation via HTTPS. Se a sua instância do Jenkins estiver atrás de um firewall ou em uma rede privada, permita o acesso de entrada do New Relic Workflow Automation.
- Um token de API do Jenkins para a conta na qual o fluxo de trabalho é executado. Gere um a partir do seu perfil de usuário do Jenkins: Configure > API Token > Add new Token.
- Um segredo no New Relic Secrets Service contendo o valor codificado em Base64 de
username:apiToken. Referencie-o no fluxo de trabalho como${{ :secrets:<keyName> }}. - Para jobs baseados em pasta, o caminho completo da pasta até o job usando
/como separador (por exemplo,deployments/production/my-job).
Acionar um job do Jenkins
O identificador da ação é jenkins.job.trigger.
Aciona uma compilação do Jenkins com parâmetros opcionais. Em caso de sucesso, retorna um queueId que você pode usar com jenkins.queue.getItem para acompanhar o progresso da compilação e recuperar o número da compilação assim que a execução for iniciada.
A tabela a seguir descreve todos os campos de entrada disponíveis para esta ação.
Entrada | Tipo | Descrição | Exemplo |
|---|---|---|---|
authToken | String (segredo) | Obrigatório.
codificado em Base64 para autenticação básica HTTP. Gere o token da API a partir do seu perfil de usuário do Jenkins em Configure > API Token . |
|
url | Corda | Obrigatório. URL do servidor Jenkins. |
|
jobName | Corda | Obrigatório. Nome do job do Jenkins a ser acionado. Para jobs baseados em pastas, use barras normais como separadores. |
|
parâmetro | Mapa | Opcional. Parâmetros de compilação como pares de valor principal para compilações parametrizadas. Quando fornecido, a ação usa o endpoint
automaticamente. |
|
selectors | Lista | Opcional. Seletores JQ para extrair campos específicos da saída da ação. |
|
A tabela a seguir descreve todos os campos de saída retornados por esta ação.
Saída | Tipo | Descrição |
|---|---|---|
queueId | Interno | ID do item da fila, por exemplo,
. Use com
para acompanhar o progresso da compilação e recuperar o número da compilação assim que a execução for iniciada. |
queueUrl | Corda | URL completa da fila, por exemplo,
. |
código de status | Interno | Código de status HTTP.
indica um acionamento bem-sucedido. |
success | Boleano |
em caso de sucesso,
em caso de falha. |
errorMessage | Corda | Mensagem de erro se o build falhar ao ser acionado.
em caso de sucesso. |
O exemplo a seguir aciona um build parametrizado do Jenkins e captura o ID da fila para rastreamento.
Exemplo de fluxo de trabalho |
|---|
|
Obter o status de um build do Jenkins
O identificador da ação é jenkins.job.getStatus.
Obtém o status de um build de job do Jenkins. Use esta ação para consultar um build acionado por jenkins.job.trigger.
Para verificar uma build específica em vez da mais recente, forneça seu buildNumber. Obtenha o número da build consultando a fila com jenkins.queue.getItem após acionar a build.
A tabela a seguir descreve todos os campos de entrada disponíveis para esta ação.
Entrada | Tipo | Descrição | Exemplo |
|---|---|---|---|
authToken | String (segredo) | Obrigatório.
codificado em Base64 para autenticação básica HTTP. |
|
url | Corda | Obrigatório. URL do servidor Jenkins. |
|
jobName | Corda | Obrigatório. Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores. |
|
buildNumber | Interno | Opcional. Número específico do build para verificar. Se não for fornecido, retorna o status do último build. |
|
selectors | Lista | Opcional. Seletores JQ para extrair campos específicos da resposta HTTP. |
|
A tabela a seguir descreve todos os campos de saída retornados por esta ação.
Saída | Tipo | Descrição |
|---|---|---|
response | Objeto | Detalhes da build da API do Jenkins. Os valores do campo |
success | Boleano |
em caso de sucesso,
em caso de falha. |
errorMessage | Corda | Mensagem de erro se a solicitação falhar.
em caso de sucesso. |
O exemplo a seguir verifica o status de uma compilação do Jenkins e ramifica com base no resultado.
Exemplo de fluxo de trabalho |
|---|
|
Excluir um job do Jenkins
O identificador da ação é jenkins.job.delete.
Exclui permanentemente um job do Jenkins e todo o seu histórico de build. Esta operação não pode ser desfeita.
A tabela a seguir descreve todos os campos de entrada disponíveis para esta ação.
Entrada | Tipo | Descrição | Exemplo |
|---|---|---|---|
authToken | String (segredo) | Obrigatório.
codificado em Base64 para autenticação básica HTTP. |
|
url | Corda | Obrigatório. URL do servidor Jenkins. |
|
jobName | Corda | Obrigatório. Nome do job do Jenkins a ser excluído. Para jobs baseados em pastas, use barras normais como separadores. |
|
selectors | Lista | Opcional. Seletores JQ para extrair campos específicos da resposta HTTP. |
|
A tabela a seguir descreve todos os campos de saída retornados por esta ação.
Saída | Tipo | Descrição |
|---|---|---|
response | Objeto | O Jenkins retorna HTTP 302 (redirecionamento) em caso de exclusão bem-sucedida. O job é removido imediatamente. Exemplo:
|
success | Boleano |
em caso de sucesso,
em caso de falha. |
errorMessage | Corda | Mensagem de erro se a exclusão falhou.
em caso de sucesso. |
O exemplo a seguir exclui um job temporário do Jenkins.
Exemplo de fluxo de trabalho |
|---|
|
Parar um build do Jenkins em execução
O identificador da ação é jenkins.job.stop.
Interrompe ou anula um build em execução do Jenkins. O Jenkins marca o build como ABORTED depois de interrompido.
Requer o buildNumber do build em execução. Obtenha-o acionando o build com jenkins.job.trigger e, em seguida, consultando jenkins.queue.getItem.
A tabela a seguir descreve todos os campos de entrada disponíveis para esta ação.
Entrada | Tipo | Descrição | Exemplo |
|---|---|---|---|
authToken | String (segredo) | Obrigatório.
codificado em Base64 para autenticação básica HTTP. |
|
url | Corda | Obrigatório. URL do servidor Jenkins. |
|
jobName | Corda | Obrigatório. Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores. |
|
buildNumber | Interno | Obrigatório. Número do build a ser interrompido. Deve ser um build atualmente em execução. |
|
selectors | Lista | Opcional. Seletores JQ para extrair campos específicos da resposta HTTP. |
|
A tabela a seguir descreve todos os campos de saída retornados por esta ação.
Saída | Tipo | Descrição |
|---|---|---|
response | Objeto | O Jenkins retorna HTTP 302 (redirecionamento) em uma solicitação de parada bem-sucedida. Exemplo:
|
success | Boleano |
em caso de sucesso,
em caso de falha. |
errorMessage | Corda | Mensagem de erro se houver falha ao interromper o build.
em caso de sucesso. |
O exemplo a seguir interrompe uma compilação do Jenkins em execução.
Exemplo de fluxo de trabalho |
|---|
|
Obter a saída do console de um build do Jenkins
O identificador da ação é jenkins.job.getConsoleOutput.
Recupera a saída do console e os logs de um build do Jenkins.
Requer o buildNumber. Obtenha-o acionando o build com jenkins.job.trigger e, em seguida, consultando jenkins.queue.getItem.
A tabela a seguir descreve todos os campos de entrada disponíveis para esta ação.
Entrada | Tipo | Descrição | Exemplo |
|---|---|---|---|
authToken | String (segredo) | Obrigatório.
codificado em Base64 para autenticação básica HTTP. |
|
url | Corda | Obrigatório. URL do servidor Jenkins. |
|
jobName | Corda | Obrigatório. Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores. |
|
buildNumber | Interno | Obrigatório. Número do build para recuperar a saída do console. |
|
selectors | Lista | Opcional. Seletores JQ para extrair campos específicos da resposta HTTP. O texto de saída do console está em
. |
|
A tabela a seguir descreve todos os campos de saída retornados por esta ação.
Saída | Tipo | Descrição |
|---|---|---|
response | Objeto | Saída do console retornada como texto simples em |
success | Boleano |
em caso de sucesso,
em caso de falha. |
errorMessage | Corda | Mensagem de erro se a recuperação da saída do console falhar.
em caso de sucesso. |
O exemplo a seguir recupera os logs do build e verifica se há erros.
Exemplo de fluxo de trabalho |
|---|
|