Esta página proporciona una referencia de las acciones de trabajos de Jenkins disponibles en el catálogo de acciones de automatización de flujo de trabajo. Utilice estas acciones para activar y administrar las compilaciones de Jenkins.
Requisitos previos
Antes de usar las acciones de trabajo de Jenkins en la automatización del flujo de trabajo, necesita:
- Un servidor de Jenkins accesible desde New Relic Workflow Automation a través de HTTPS. Si su instancia de Jenkins está detrás de un firewall o en una red privada, permita el acceso entrante desde New Relic Workflow Automation.
- Un token de API de Jenkins para la cuenta con la que se ejecuta el flujo de trabajo. Genere uno desde el perfil de usuario de Jenkins: Configure > API Token > Add new Token.
- Un secreto en el New Relic Secrets Service que contiene el valor codificado en Base64 de
username:apiToken. Referéncielo en el flujo de trabajo como${{ :secrets:<keyName> }}. - Para trabajos basados en carpetas, la ruta completa de la carpeta al trabajo usando
/como separador (por ejemplo,deployments/production/my-job).
Desencadenar un trabajo de Jenkins
El identificador de la acción es jenkins.job.trigger.
Desencadena una compilación de Jenkins con parámetros opcionales. En caso de éxito, devuelve un queueId que puede usar con jenkins.queue.getItem para realizar un seguimiento del progreso de la compilación y recuperar el número de compilación una vez que comienza la ejecución.
La siguiente tabla describe todos los campos de entrada disponibles para esta acción.
Aporte | Tipo | Descripción | Ejemplo |
|---|---|---|---|
authToken | Cadena (secreta) | Requerido.
codificado en Base64 para la autenticación básica HTTP. Genere el token de la API desde el perfil de usuario de Jenkins en Configure > API Token . |
|
url | Cadena | Requerido. URL del servidor de Jenkins. |
|
jobName | Cadena | Requerido. Nombre del trabajo de Jenkins a ejecutar. Para los trabajos basados en carpetas, use barras diagonales como separadores. |
|
parámetro | Mapa | Opcional. Parámetros de compilación como pares de valor principal para compilaciones parametrizadas. Cuando se proporciona, la acción usa el extremo
automáticamente. |
|
selectors | Lista | Opcional. Selectores JQ para extraer campos específicos de la salida de la acción. |
|
La siguiente tabla describe todos los campos de salida devueltos por esta acción.
Producción | Tipo | Descripción |
|---|---|---|
queueId | En t | ID del elemento de la cola, por ejemplo,
. Úselo con
para realizar un seguimiento del progreso de la compilación y obtener el número de compilación una vez que se inicie la ejecución. |
queueUrl | Cadena | URL completa de la cola, por ejemplo,
. |
código de estado | En t | Código de estado HTTP.
indica una activación exitosa. |
success | Booleano |
en caso de éxito,
en caso de falla. |
errorMessage | Cadena | Mensaje de error si la compilación no se pudo activar.
en caso de éxito. |
El siguiente ejemplo activa una compilación parametrizada de Jenkins y captura el ID de la cola para su seguimiento.
Ejemplo de flujo de trabajo |
|---|
|
Obtener el estado de una compilación de Jenkins
El identificador de la acción es jenkins.job.getStatus.
Obtiene el estado de la compilación de un trabajo de Jenkins. Use esta acción para sondear una compilación iniciada por jenkins.job.trigger.
Para comprobar una compilación específica en lugar de la última, proporcione su buildNumber. Obtenga el número de compilación sondeando la cola con jenkins.queue.getItem después de desencadenar la compilación.
La siguiente tabla describe todos los campos de entrada disponibles para esta acción.
Aporte | Tipo | Descripción | Ejemplo |
|---|---|---|---|
authToken | Cadena (secreta) | Requerido.
codificado en Base64 para la autenticación básica HTTP. |
|
url | Cadena | Requerido. URL del servidor de Jenkins. |
|
jobName | Cadena | Requerido. Nombre del trabajo de Jenkins. Para los trabajos basados en carpetas, utilice barras diagonales como separadores. |
|
buildNumber | En t | Opcional. Número de compilación específico para comprobar. Si no se proporciona, devuelve el estado de la última compilación. |
|
selectors | Lista | Opcional. Selectores JQ para extraer campos específicos de la respuesta HTTP. |
|
La siguiente tabla describe todos los campos de salida devueltos por esta acción.
Producción | Tipo | Descripción |
|---|---|---|
response | Objeto | Detalles de la compilación de la API de Jenkins. Los valores del campo |
success | Booleano |
en caso de éxito,
en caso de falla. |
errorMessage | Cadena | Mensaje de error si la solicitud falló.
en caso de éxito. |
El siguiente ejemplo verifica el estado de una compilación de Jenkins y se bifurca según el resultado.
Ejemplo de flujo de trabajo |
|---|
|
Eliminar un trabajo de Jenkins
El identificador de la acción es jenkins.job.delete.
Elimina permanentemente un trabajo de Jenkins y todo su historial de compilaciones. Esta operación no se puede deshacer.
La siguiente tabla describe todos los campos de entrada disponibles para esta acción.
Aporte | Tipo | Descripción | Ejemplo |
|---|---|---|---|
authToken | Cadena (secreta) | Requerido.
codificado en Base64 para la autenticación básica HTTP. |
|
url | Cadena | Requerido. URL del servidor de Jenkins. |
|
jobName | Cadena | Requerido. Nombre del trabajo de Jenkins a eliminar. Para los trabajos basados en carpetas, utilice barras diagonales como separadores. |
|
selectors | Lista | Opcional. Selectores JQ para extraer campos específicos de la respuesta HTTP. |
|
La siguiente tabla describe todos los campos de salida devueltos por esta acción.
Producción | Tipo | Descripción |
|---|---|---|
response | Objeto | Jenkins devuelve HTTP 302 (redirección) tras una eliminación exitosa. El trabajo se elimina inmediatamente. Ejemplo:
|
success | Booleano |
en caso de éxito,
en caso de falla. |
errorMessage | Cadena | Mensaje de error si falló la eliminación.
en caso de éxito. |
El siguiente ejemplo elimina un trabajo temporal de Jenkins.
Ejemplo de flujo de trabajo |
|---|
|
Detenga una compilación de Jenkins en ejecución
El identificador de la acción es jenkins.job.stop.
Detiene o aborta una compilación de Jenkins en ejecución. Jenkins marca la compilación como ABORTED una vez detenida.
Requiere el buildNumber de la compilación en ejecución. Obténgalo activando la compilación con jenkins.job.trigger y luego consultando jenkins.queue.getItem.
La siguiente tabla describe todos los campos de entrada disponibles para esta acción.
Aporte | Tipo | Descripción | Ejemplo |
|---|---|---|---|
authToken | Cadena (secreta) | Requerido.
codificado en Base64 para la autenticación básica HTTP. |
|
url | Cadena | Requerido. URL del servidor de Jenkins. |
|
jobName | Cadena | Requerido. Nombre del trabajo de Jenkins. Para los trabajos basados en carpetas, utilice barras diagonales como separadores. |
|
buildNumber | En t | Requerido. Número de compilación a detener. Debe ser una compilación en ejecución. |
|
selectors | Lista | Opcional. Selectores JQ para extraer campos específicos de la respuesta HTTP. |
|
La siguiente tabla describe todos los campos de salida devueltos por esta acción.
Producción | Tipo | Descripción |
|---|---|---|
response | Objeto | Jenkins devuelve HTTP 302 (redirección) en una solicitud de detención exitosa. Ejemplo:
|
success | Booleano |
en caso de éxito,
en caso de falla. |
errorMessage | Cadena | Mensaje de error si no se pudo detener la compilación.
en caso de éxito. |
El siguiente ejemplo detiene una compilación de Jenkins en ejecución.
Ejemplo de flujo de trabajo |
|---|
|
Obtener la salida de la consola de una compilación de Jenkins
El identificador de la acción es jenkins.job.getConsoleOutput.
Recupera la salida de la consola y los logs de una compilación de Jenkins.
Requiere el buildNumber. Obténgalo activando la compilación con jenkins.job.trigger y luego consultando jenkins.queue.getItem.
La siguiente tabla describe todos los campos de entrada disponibles para esta acción.
Aporte | Tipo | Descripción | Ejemplo |
|---|---|---|---|
authToken | Cadena (secreta) | Requerido.
codificado en Base64 para la autenticación básica HTTP. |
|
url | Cadena | Requerido. URL del servidor de Jenkins. |
|
jobName | Cadena | Requerido. Nombre del trabajo de Jenkins. Para los trabajos basados en carpetas, utilice barras diagonales como separadores. |
|
buildNumber | En t | Requerido. Número de compilación del cual recuperar la salida de la consola. |
|
selectors | Lista | Opcional. Selectores JQ para extraer campos específicos de la respuesta HTTP. El texto de salida de la consola está en
. |
|
La siguiente tabla describe todos los campos de salida devueltos por esta acción.
Producción | Tipo | Descripción |
|---|---|---|
response | Objeto | Salida de la consola devuelta como texto sin formato en |
success | Booleano |
en caso de éxito,
en caso de falla. |
errorMessage | Cadena | Mensaje de error si falló la recuperación de la salida de la consola.
en caso de éxito. |
El siguiente ejemplo recupera los logs de compilación y comprueba si hay errores.
Ejemplo de flujo de trabajo |
|---|
|