• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Actions de job Jenkins

|View as Markdown (English)

Cette page fournit une référence pour les actions de tâche Jenkins disponibles dans le catalogue des actions d’automatisation de workflow. Utilisez ces actions pour déclencher et gérer les builds Jenkins.

Prérequis

Avant d'utiliser les actions de job Jenkins dans l'automatisation des workflows, vous avez besoin de :

  • Un serveur Jenkins accessible depuis New Relic Workflow Automation via HTTPS. Si votre instance Jenkins est derrière un pare-feu ou dans un réseau privé, autorisez l’accès entrant depuis New Relic Workflow Automation.
  • Un jeton d’API Jenkins pour le compte sous lequel le workflow s’exécute. Générez-en un depuis votre profil utilisateur Jenkins : Configure > API Token > Add new Token.
  • Un secret dans le New Relic Secrets Service contenant la valeur encodée en Base64 de username:apiToken. Référencez-le dans le workflow en tant que ${{ :secrets:<keyName> }}.
  • Pour les jobs basés sur des dossiers, le chemin d’accès complet au dossier du job utilisant / comme séparateur (par exemple, deployments/production/my-job).

Déclencher un job Jenkins

L’identifiant de l’action est jenkins.job.trigger.

Déclenche un build Jenkins avec des paramètres facultatifs. En cas de succès, renvoie un queueId que vous pouvez utiliser avec jenkins.queue.getItem pour suivre la progression du build, et récupérer le numéro de build une fois l’exécution commencée.

Le tableau suivant décrit tous les champs de saisie disponibles pour cette action.

Saisir

Type

Description

Exemple

authToken

Chaîne (secret)

Obligatoire.

username:apiToken

encodé en Base64 pour l’authentification HTTP Basic. Générez le jeton d’API depuis votre profil utilisateur Jenkins sous

Configure > API Token

.

${{ :secrets:jenkinsAuthToken }}

url

Chaîne

Obligatoire.

URL du serveur Jenkins.

https://jenkins.example.com

jobName

Chaîne

Obligatoire.

Nom du job Jenkins à déclencher. Pour les jobs basés sur des dossiers, utilisez des barres obliques comme séparateurs.

deployments/production/my-job

paramètres

Carte

Facultatif.

Paramètres de build sous forme de paires valeur clé pour les builds paramétrés. Lorsqu’il est fourni, l’action utilise automatiquement le point de terminaison

/buildWithParameters

.

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

selectors

List

Facultatif.

Sélecteurs JQ pour extraire des champs spécifiques de la sortie de l'action.

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

Le tableau suivant décrit tous les champs de sortie renvoyés par cette action.

Sortir

Type

Description

queueId

Int

ID de l’élément de la file d’attente, par exemple

123

. Utilisez avec

jenkins.queue.getItem

pour suivre la progression du build et récupérer le numéro de build une fois l’exécution commencée.

queueUrl

Chaîne

URL complète de la file d'attente, par exemple

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

.

code d'état

Int

Code d’état HTTP.

201

indique un déclenchement réussi.

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si le déclenchement du build a échoué.

null

en cas de succès.

L'exemple suivant déclenche un build Jenkins paramétré et capture l'ID de la file d'attente pour le suivi.

Exemple de workflow

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

Obtenir le statut d’un build Jenkins

L’identifiant de l’action est jenkins.job.getStatus.

Obtient le statut d'un build de job Jenkins. Utilisez cette action pour interroger un build déclenché par jenkins.job.trigger.

Pour vérifier un build spécifique plutôt que le dernier, fournissez son buildNumber. Obtenez le numéro de build en interrogeant la file d’attente avec jenkins.queue.getItem après avoir déclenché le build.

Le tableau suivant décrit tous les champs de saisie disponibles pour cette action.

Saisir

Type

Description

Exemple

authToken

Chaîne (secret)

Obligatoire.

username:apiToken

encodé en Base64 pour l’authentification HTTP de base.

${{ :secrets:jenkinsAuthToken }}

url

Chaîne

Obligatoire.

URL du serveur Jenkins.

https://jenkins.example.com

jobName

Chaîne

Obligatoire.

Nom du job Jenkins. Pour les jobs basés sur des dossiers, utilisez des barres obliques comme séparateurs.

deployments/production/my-job

buildNumber

Int

Facultatif.

Numéro de build spécifique à vérifier. S’il n’est pas fourni, renvoie le statut du dernier build.

42

selectors

List

Facultatif.

Sélecteurs JQ pour extraire des champs spécifiques de la réponse HTTP.

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

Le tableau suivant décrit tous les champs de sortie renvoyés par cette action.

Sortir

Type

Description

response

Objet

Détails du build à partir de l’API Jenkins. Les valeurs du champ result sont SUCCESS, FAILURE, UNSTABLE, ABORTED, NOT_BUILT, ou null si le build est toujours en cours.

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

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si la requête a échoué.

null

en cas de succès.

L'exemple suivant vérifie le statut d'un build Jenkins et effectue un branchement en fonction du résultat.

Exemple de workflow

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

Supprimer un job Jenkins

L’identifiant de l’action est jenkins.job.delete.

Supprime définitivement un job Jenkins et tout son historique de build. Cette opération ne peut pas être annulée.

Le tableau suivant décrit tous les champs de saisie disponibles pour cette action.

Saisir

Type

Description

Exemple

authToken

Chaîne (secret)

Obligatoire.

username:apiToken

encodé en Base64 pour l’authentification HTTP de base.

${{ :secrets:jenkinsAuthToken }}

url

Chaîne

Obligatoire.

URL du serveur Jenkins.

https://jenkins.example.com

jobName

Chaîne

Obligatoire.

Nom du job Jenkins à supprimer. Pour les jobs basés sur des dossiers, utilisez des barres obliques comme séparateurs.

temporary/test-job-123

selectors

List

Facultatif.

Sélecteurs JQ pour extraire des champs spécifiques de la réponse HTTP.

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

Le tableau suivant décrit tous les champs de sortie renvoyés par cette action.

Sortir

Type

Description

response

Objet

Jenkins renvoie HTTP 302 (redirect) en cas de suppression réussie. Le job est immédiatement supprimé. Exemple :

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

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si la suppression a échoué.

null

en cas de succès.

L’exemple suivant supprime un job Jenkins temporaire.

Exemple de workflow

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

Arrêter un build Jenkins en cours d’exécution

L’identifiant de l’action est jenkins.job.stop.

Arrête ou abandonne un build Jenkins en cours d’exécution. Jenkins marque le build comme ABORTED une fois arrêté.

Nécessite le buildNumber du build en cours d’exécution. Obtenez-le en déclenchant le build avec jenkins.job.trigger, et ensuite en interrogeant jenkins.queue.getItem.

Le tableau suivant décrit tous les champs de saisie disponibles pour cette action.

Saisir

Type

Description

Exemple

authToken

Chaîne (secret)

Obligatoire.

username:apiToken

encodé en Base64 pour l’authentification HTTP de base.

${{ :secrets:jenkinsAuthToken }}

url

Chaîne

Obligatoire.

URL du serveur Jenkins.

https://jenkins.example.com

jobName

Chaîne

Obligatoire.

Nom du job Jenkins. Pour les jobs basés sur des dossiers, utilisez des barres obliques comme séparateurs.

deployments/production/my-job

buildNumber

Int

Obligatoire.

Numéro de build à arrêter. Doit être un build en cours d’exécution.

42

selectors

List

Facultatif.

Sélecteurs JQ pour extraire des champs spécifiques de la réponse HTTP.

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

Le tableau suivant décrit tous les champs de sortie renvoyés par cette action.

Sortir

Type

Description

response

Objet

Jenkins renvoie HTTP 302 (redirection) lors d’une requête d’arrêt réussie. Exemple :

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

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si l’arrêt du build a échoué.

null

en cas de succès.

L’exemple suivant arrête un build Jenkins en cours d’exécution.

Exemple de workflow

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

Obtenir la sortie console d'un build Jenkins

L’identifiant de l’action est jenkins.job.getConsoleOutput.

Récupère la sortie de la console et les logs d’un build Jenkins.

Nécessite le buildNumber. Obtenez-le en déclenchant le build avec jenkins.job.trigger, et ensuite en interrogeant jenkins.queue.getItem.

Le tableau suivant décrit tous les champs de saisie disponibles pour cette action.

Saisir

Type

Description

Exemple

authToken

Chaîne (secret)

Obligatoire.

username:apiToken

encodé en Base64 pour l’authentification HTTP de base.

${{ :secrets:jenkinsAuthToken }}

url

Chaîne

Obligatoire.

URL du serveur Jenkins.

https://jenkins.example.com

jobName

Chaîne

Obligatoire.

Nom du job Jenkins. Pour les jobs basés sur des dossiers, utilisez des barres obliques comme séparateurs.

deployments/production/my-job

buildNumber

Int

Obligatoire.

Numéro de build pour lequel récupérer la sortie de la console.

142

selectors

List

Facultatif.

Sélecteurs JQ pour extraire des champs spécifiques de la réponse HTTP. Le texte de sortie de la console est dans

response.body

.

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

Le tableau suivant décrit tous les champs de sortie renvoyés par cette action.

Sortir

Type

Description

response

Objet

Sortie de la console renvoyée en texte brut dans response.body. Utiliser des sélecteurs pour extraire des informations spécifiques des logs.

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

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si la récupération de la sortie de la console a échoué.

null

en cas de succès.

L’exemple suivant récupère les logs de build et recherche des erreurs.

Exemple de workflow

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
Droits d'auteur © 2026 New Relic Inc.

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