• /
  • EnglishEspañolFrançais日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

Jenkinsキューアクション

|View as Markdown (English)

このページでは、ワークフロー自動化アクションカタログで利用可能なJenkinsキューアクションのリファレンスを提供します。これらのアクションを使用して、Jenkinsビルドキューで待機しているビルドを検査および管理してください。

前提条件

ワークフロー自動化でJenkinsキューアクションを使用する前に、以下が必要です:

  • HTTPS経由でNew Relicワークフローオートメーションから到達可能なJenkinsサーバー。Jenkinsインスタンスがファイアウォールの背後またはプライベートネットワーク内にある場合は、New Relicワークフローオートメーションからのインバウンドアクセスを許可してください。
  • ワークフローを実行するアカウントのJenkins APIトークン。Jenkinsユーザープロファイルから生成します:Configure > API Token > Add new Token
  • username:apiTokenのBase64エンコードされた値を含むNew Relic Secrets Serviceのシークレット。ワークフロー内で${{ :secrets:<keyName> }}として参照します。

Jenkinsキューアイテムを取得します

アクション識別子はjenkins.queue.getItemです。

実行が開始されると、ビルド番号を含むキューアイテムの詳細を取得します。jenkins.job.trigger でビルドをトリガーした後にキューをポーリングし、他のジョブアクションで必要となるビルド番号を取得するには、このアクションを使用します。

ビルドの実行が開始されると、レスポンスの executable.number フィールドにビルド番号が含まれます。アイテムがまだキューに入っている間は null です。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

authToken

文字列(シークレット)

必須。

HTTP Basic認証用のBase64エンコードされた

username:apiToken

です。

${{ :secrets:jenkinsAuthToken }}

url

必須。

JenkinsサーバーのURL。

https://jenkins.example.com

queueId

Int

必須。

jenkins.job.trigger

から返されたキューアイテムID。実行が開始されたら、これを使用してビルドを追跡し、ビルド番号を取得します。

123

selectors

リスト

オプション。

HTTPレスポンスから特定のフィールドを抽出するためのJQセレクタ。

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

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

キューアイテムの詳細。ビルドの実行が開始されると、executable.numberにはビルド番号が含まれます — アイテムがまだキューにある間はnullです。

{
"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

ブール値

true

成功時は、失敗時は

false

errorMessage

リクエストが失敗した場合のエラーメッセージです。成功した場合は

null

以下の例では、ビルドをトリガーし、ビルド番号が利用可能になるまでキューをポーリングします。

ワークフローの例

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

キューに入っているJenkinsビルドをキャンセルする

アクション識別子はjenkins.queue.cancelです。

実行が開始される前に、キューに入れられたJenkinsビルドをキャンセルします。以前のjenkins.job.trigger呼び出しから取得したqueueIdが必要です。

ビルドの実行がすでに開始されている場合、このアクションは失敗します。すでに実行中のビルドを停止するには、代わりに jenkins.job.stop を使用してください。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

authToken

文字列(シークレット)

必須。

HTTP Basic認証用のBase64エンコードされた

username:apiToken

です。

${{ :secrets:jenkinsAuthToken }}

url

必須。

JenkinsサーバーのURL。

https://jenkins.example.com

queueId

Int

必須。

キャンセルするキューアイテムID。アイテムはまだキュー内にあり、実行されていない必要があります。

123

selectors

リスト

オプション。

HTTPレスポンスから特定のフィールドを抽出するためのJQセレクタ。

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

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

キャンセルが成功すると、JenkinsはHTTP 204(No Content)を返します。キューアイテムが見つからない場合、またはすでに実行が開始されている場合、Jenkinsは404を返します。例:

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

success

ブール値

true

成功時は、失敗時は

false

errorMessage

キャンセルに失敗した場合のエラーメッセージ。成功した場合は

null

次の例では、Jenkinsビルドをトリガーし、実行が開始される前にキャンセルします。

ワークフローの例

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

Jenkinsビルドキュー内のすべてのアイテムを一覧表示します。

アクション識別子はjenkins.queue.listです。

現在Jenkinsビルドキューにあるすべてのアイテムを一覧表示します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

authToken

文字列(シークレット)

必須。

HTTP Basic認証用のBase64エンコードされた

username:apiToken

です。

${{ :secrets:jenkinsAuthToken }}

url

必須。

JenkinsサーバーのURL。

https://jenkins.example.com

selectors

リスト

オプション。

HTTPレスポンスから特定のフィールドを抽出するためのJQセレクタ。

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

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

すべてのキューアイテム。各アイテムには、idtask(ジョブ情報)、およびexecutable(ビルド開始後のビルド情報)が含まれます。

{
"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

ブール値

true

成功時は、失敗時は

false

errorMessage

リクエストが失敗した場合のエラーメッセージです。成功した場合は

null

以下の例では、Jenkinsビルドキュー内のすべてのアイテムをリストし、カウントを抽出します。

ワークフローの例

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
Copyright © 2026 New Relic株式会社。

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