• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Ações de job do Jenkins

|View as Markdown (English)

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.

username:apiToken

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

.

${{ :secrets:jenkinsAuthToken }}

url

Corda

Obrigatório.

URL do servidor Jenkins.

https://jenkins.example.com

jobName

Corda

Obrigatório.

Nome do job do Jenkins a ser acionado. Para jobs baseados em pastas, use barras normais como separadores.

deployments/production/my-job

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

/buildWithParameters

automaticamente.

{"ENVIRONMENT": "production", "VERSION": "v1.2.3"}

selectors

Lista

Opcional.

Seletores JQ para extrair campos específicos da saída da ação.

[{"name": "queueId", "expression": ".queueId"}]

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,

123

. Use 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.

queueUrl

Corda

URL completa da fila, por exemplo,

"http://jenkins.example.com/queue/item/123/"

.

código de status

Interno

Código de status HTTP.

201

indica um acionamento bem-sucedido.

success

Boleano

true

em caso de sucesso,

false

em caso de falha.

errorMessage

Corda

Mensagem de erro se o build falhar ao ser acionado.

null

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

name: trigger-jenkins-build
description: 'Trigger a parameterized Jenkins build'
steps:
- name: trigger_build
type: action
action: jenkins.job.trigger
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "deployments/production-deploy"
parameters:
ENVIRONMENT: "production"
VERSION: "v1.2.3"
selectors:
- name: "queueId"
expression: ".queueId"
next: end

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.

username:apiToken

codificado em Base64 para autenticação básica HTTP.

${{ :secrets:jenkinsAuthToken }}

url

Corda

Obrigatório.

URL do servidor Jenkins.

https://jenkins.example.com

jobName

Corda

Obrigatório.

Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores.

deployments/production/my-job

buildNumber

Interno

Opcional.

Número específico do build para verificar. Se não for fornecido, retorna o status do último build.

42

selectors

Lista

Opcional.

Seletores JQ para extrair campos específicos da resposta HTTP.

[{"name": "buildStatus", "expression": ".responseBody | fromjson.result"}]

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 result são SUCCESS, FAILURE, UNSTABLE, ABORTED, NOT_BUILT ou null se a build ainda estiver em andamento.

{
"number": 42,
"result": "SUCCESS",
"building": false,
"duration": 45000,
"timestamp": 1625234567000,
"url": "http://jenkins.example.com/job/my-job/42/"
}

success

Boleano

true

em caso de sucesso,

false

em caso de falha.

errorMessage

Corda

Mensagem de erro se a solicitação falhar.

null

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

name: check-jenkins-build-status
description: 'Check the status of a Jenkins build and branch on result'
steps:
- name: check_build_status
type: action
action: jenkins.job.getStatus
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "deployments/production-deploy"
buildNumber: 42
selectors:
- name: buildStatus
expression: ".responseBody | fromjson.result"
- name: isBuilding
expression: ".responseBody | fromjson.building"
- name: handle_result
type: switch
switch:
- condition: ${{ .steps.check_build_status.outputs.buildStatus == "SUCCESS" }}
next: notify_success
next: notify_failure

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.

username:apiToken

codificado em Base64 para autenticação básica HTTP.

${{ :secrets:jenkinsAuthToken }}

url

Corda

Obrigatório.

URL do servidor Jenkins.

https://jenkins.example.com

jobName

Corda

Obrigatório.

Nome do job do Jenkins a ser excluído. Para jobs baseados em pastas, use barras normais como separadores.

temporary/test-job-123

selectors

Lista

Opcional.

Seletores JQ para extrair campos específicos da resposta HTTP.

[{"name": "statusCode", "expression": ".statusCode"}]

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:

{ "statusCode": 302, "body": "" }

success

Boleano

true

em caso de sucesso,

false

em caso de falha.

errorMessage

Corda

Mensagem de erro se a exclusão falhou.

null

em caso de sucesso.

O exemplo a seguir exclui um job temporário do Jenkins.

Exemplo de fluxo de trabalho

name: cleanup-jenkins-job
description: 'Delete a temporary Jenkins job'
steps:
- name: delete_job
type: action
action: jenkins.job.delete
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "temporary/test-job-123"
next: end

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.

username:apiToken

codificado em Base64 para autenticação básica HTTP.

${{ :secrets:jenkinsAuthToken }}

url

Corda

Obrigatório.

URL do servidor Jenkins.

https://jenkins.example.com

jobName

Corda

Obrigatório.

Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores.

deployments/production/my-job

buildNumber

Interno

Obrigatório.

Número do build a ser interrompido. Deve ser um build atualmente em execução.

42

selectors

Lista

Opcional.

Seletores JQ para extrair campos específicos da resposta HTTP.

[{"name": "statusCode", "expression": ".statusCode"}]

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:

{ "statusCode": 302, "body": "" }

success

Boleano

true

em caso de sucesso,

false

em caso de falha.

errorMessage

Corda

Mensagem de erro se houver falha ao interromper o build.

null

em caso de sucesso.

O exemplo a seguir interrompe uma compilação do Jenkins em execução.

Exemplo de fluxo de trabalho

name: stop-jenkins-build
description: 'Stop a running Jenkins build'
steps:
- name: stop_build
type: action
action: jenkins.job.stop
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "deployments/production-deploy"
buildNumber: 42
next: end

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.

username:apiToken

codificado em Base64 para autenticação básica HTTP.

${{ :secrets:jenkinsAuthToken }}

url

Corda

Obrigatório.

URL do servidor Jenkins.

https://jenkins.example.com

jobName

Corda

Obrigatório.

Nome do job do Jenkins. Para jobs baseados em pastas, use barras normais como separadores.

deployments/production/my-job

buildNumber

Interno

Obrigatório.

Número do build para recuperar a saída do console.

142

selectors

Lista

Opcional.

Seletores JQ para extrair campos específicos da resposta HTTP. O texto de saída do console está em

response.body

.

[{"name": "buildLogs", "expression": ".responseBody"}]

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 response.body. Use seletores para extrair informações específicas dos logs.

{
"body": "Started by user admin\nBuilding in workspace...\n[Pipeline] End of Pipeline\nFinished: SUCCESS",
"statusCode": 200
}

success

Boleano

true

em caso de sucesso,

false

em caso de falha.

errorMessage

Corda

Mensagem de erro se a recuperação da saída do console falhar.

null

em caso de sucesso.

O exemplo a seguir recupera os logs do build e verifica se há erros.

Exemplo de fluxo de trabalho

name: get-jenkins-build-logs
description: 'Retrieve Jenkins build logs and check for errors'
steps:
- name: get_build_logs
type: action
action: jenkins.job.getConsoleOutput
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "deployments/production-deploy"
buildNumber: 142
selectors:
- name: buildLogs
expression: ".responseBody"
- name: hasErrors
expression: ".responseBody | contains(\"ERROR\") or contains(\"FAILED\")"
- name: check_for_errors
type: switch
switch:
- condition: ${{ .steps.get_build_logs.outputs.hasErrors }}
next: handle_error
next: end
Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.