Lesstep
GitLab・CI/CD のジョブ・リソースグループ・2026年10月28日に確認

GitLab:リソース待ちのジョブ

resource_group のあるジョブは、そのグループのリソースが空いているときだけ動きます。リソースグループのリソースは1つなので、そのグループのジョブはプロジェクトのすべてのパイプラインを通して1度に1つしか動きません。順番が来るまでジョブの状態は waiting_for_resource で、ジョブの画面には次の文が出ます。リソースを持っているジョブがあれば、View job currently using resource のボタンもつきます(GitLab のソース lib/gitlab/ci/status/processable/waiting_for_resource.rb・2026年10月28日に読んだもの):

This job is waiting for resource: production

ジョブがリソースを取る時と返す時

次にどのジョブが動くか:処理の順

処理の順を変えられるのは API だけです(リソースグループの更新の process_mode)。Prevent outdated deployment jobs が有効なら、最新のデプロイより古いデプロイのジョブは、順番が来たときに「The deployment job is older than the latest deployment, and therefore failed.」で失敗します(app/services/ci/resource_groups/assign_resource_from_resource_group_service.rb)。

リソースを使っているジョブの見つけ方

curl -H "PRIVATE-TOKEN: your-token" "https://gitlab.com/api/v4/projects/group%2Fproject/resource_groups/production/current_job"
curl -H "PRIVATE-TOKEN: your-token" "https://gitlab.com/api/v4/projects/group%2Fproject/resource_groups/production/upcoming_jobs"

query {
  project(fullPath: "group/project") {
    job(id: "gid://gitlab/Ci::Build/123") { status detailedStatus { action { buttonTitle path } } }
  }
}

どうするか

IntelliJ IDEA で GitLab のパイプラインを見るなら

Lesstep の Pipeline Inbox for GitLab CI は、JetBrains IDE(2024.1 以降)のプラグインです。GitLab のプロジェクトのパイプラインを、ジョブを段ごとに並べて一覧にします。リソースを待っているジョブは「リソース待ち」と出し、GitLab が返せばリソースを使っているジョブの番号も添えて(detailedStatus.action)、ジョブが動くまでパイプラインを読み直し続けます。1.0.21 より前は、どのジョブがリソースを使っているかは出しませんでした。見るのは無料、再実行・取り消し・実行は Pro(月 US$1.50・30日間の無料試用つき)です。画面は日本語です。

GITLAB は GitLab Inc. の商標、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは GitLab Inc.・JetBrains のいずれとも提携しておらず、承認も受けていません。

ほかに:GitLab のジョブが詰まった・時間切れで落とされた · GitLab の「You are not authorized to run this manual job」 · GitLab のパイプラインやジョブの断り(400・403・409・429) · GitLab のパイプラインがジョブ0件で失敗 · GitLab のジョブのログが見えない・空 · JetBrains の IDE で GitLab のパイプラインを見る · English