• /
  • 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 la file d’attente Jenkins

|View as Markdown (English)

Cette page fournit une référence pour les actions de file d’attente Jenkins disponibles dans le catalogue des actions d’automatisation de workflow. Utilisez ces actions pour inspecter et gérer les builds en attente dans la file d’attente de build Jenkins.

Prérequis

Avant d’utiliser les actions de file d’attente Jenkins dans l’automatisation workflow, 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> }}.

Obtenir un élément de la file d’attente Jenkins

L’identifiant de l’action est jenkins.queue.getItem.

Obtient les détails de l’élément de la file d’attente, y compris le numéro de build une fois que l’exécution commence. Utilisez cette action pour interroger la file d’attente après avoir déclenché un build avec jenkins.job.trigger afin de récupérer le numéro de build nécessaire pour d’autres actions de job.

Le champ executable.number de la réponse contient le numéro de build une fois que le build commence à s’exécuter. Il est null tant que l’élément est encore dans la file d’attente.

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

queueId

Int

Obligatoire.

ID de l’élément de file d’attente renvoyé par

jenkins.job.trigger

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

123

selectors

List

Facultatif.

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

[{"name": "buildNumber", "expression": ".responseBody | fromjson.executable.number // null"}]

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

Sortir

Type

Description

response

Objet

Détails de l’élément de file d’attente. executable.number contient le numéro de build une fois que le build commence à s’exécuter — il est null tant que l’élément est encore dans la file d’attente.

{
"id": 123,
"blocked": false,
"buildable": false,
"cancelled": false,
"why": null,
"executable": {
"number": 42,
"url": "http://jenkins.example.com/job/my-job/42/"
},
"task": {
"name": "my-job",
"url": "http://jenkins.example.com/job/my-job/"
},
"inQueueSince": 1625234567000
}

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 déclenche un build et interroge la file d’attente jusqu’à ce que le numéro de build soit disponible.

Exemple de workflow

name: poll-jenkins-queue
description: 'Trigger a build and poll the queue until the build number is available'
steps:
- name: trigger_build
type: action
action: jenkins.job.trigger
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "my-application-build"
selectors:
- name: "queueId"
expression: ".queueId"
next: poll_queue
- name: poll_queue
type: loop
for:
in: ${{ [range(0; 10)] }}
steps:
- name: get_queue_item
type: action
action: jenkins.queue.getItem
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
queueId: ${{ .steps.trigger_build.outputs.queueId }}
selectors:
- name: "buildNumber"
expression: ".responseBody | fromjson.executable.number // null"
- name: check_if_started
type: switch
switch:
- condition: ${{ .steps.get_queue_item.outputs.buildNumber != null }}
next: end
next: wait_and_retry
- name: wait_and_retry
type: wait
seconds: 2
next: continue

Annuler un build Jenkins en file d’attente

L’identifiant de l’action est jenkins.queue.cancel.

Annule un build Jenkins en file d’attente avant qu’il ne commence à s’exécuter. Nécessite un queueId obtenu lors d’un appel jenkins.job.trigger précédent.

Cette action échoue si le build a déjà commencé à s'exécuter. Pour arrêter un build déjà en cours d’exécution, utilisez plutôt jenkins.job.stop.

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

queueId

Int

Obligatoire.

ID de l’élément de la file d’attente à annuler. L'élément doit toujours être dans la file d'attente et ne pas encore être en cours d'exécution.

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 204 (No Content) en cas d’annulation réussie. Jenkins renvoie 404 si l'élément de la file d'attente est introuvable ou a déjà commencé à s'exécuter. Exemple :

{ "statusCode": 204, "body": "" }

success

Booléen

true

en cas de succès,

false

en cas d’échec.

errorMessage

Chaîne

Message d’erreur si l’annulation a échoué.

null

en cas de succès.

L’exemple suivant déclenche un build Jenkins, puis l’annule avant qu’il ne commence à s’exécuter.

Exemple de workflow

name: cancel-queued-jenkins-build
description: 'Trigger a Jenkins build then cancel it before it starts executing'
steps:
- name: trigger_build
type: action
action: jenkins.job.trigger
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
jobName: "my-application-build"
selectors:
- name: "queueId"
expression: ".queueId"
next: cancel_build
- name: cancel_build
type: action
action: jenkins.queue.cancel
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
queueId: ${{ .steps.trigger_build.outputs.queueId }}
next: end

Listez tous les éléments de la file d’attente de build Jenkins

L’identifiant de l’action est jenkins.queue.list.

Liste tous les éléments actuellement dans la file d'attente de build Jenkins.

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

selectors

List

Facultatif.

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

[{"name": "queueCount", "expression": ".responseBody | fromjson.items | length"}]

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

Sortir

Type

Description

response

Objet

Tous les éléments de la file d’attente. Chaque élément comprend id, task (informations sur le job), et executable (informations sur le build une fois qu’il a commencé).

{
"items": [
{
"id": 123,
"blocked": false,
"buildable": true,
"cancelled": false,
"why": "Waiting for next available executor",
"task": {
"name": "job1",
"url": "http://jenkins.example.com/job/job1/"
},
"inQueueSince": 1625234567000
}
]
}

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 liste tous les éléments de la file d'attente de build Jenkins et en extrait le nombre.

Exemple de workflow

name: list-jenkins-queue
description: 'List all items currently in the Jenkins build queue'
steps:
- name: list_queue
type: action
action: jenkins.queue.list
version: 1
inputs:
authToken: ${{ :secrets:jenkinsAuthToken }}
url: "https://jenkins.example.com"
selectors:
- name: "queueItems"
expression: ".responseBody | fromjson.items"
- name: "queueCount"
expression: ".responseBody | fromjson.items | length"
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.