Query the database for build jobs that contain a Docker Task

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Fisheye および Crucible は除く

本記事で説明している手順は、現時点でのものとなります。そのため、一部のお客様で特定の状況下で動作したという報告がありますが、正式にサポートされているわけではなく、お客様の特定のシナリオで動作することを保証するものではありません。

本番環境での実施の前に一通り非本番環境で検証し、成功しなかった場合にはサポートされている代替案にフォール バックしてください。

また、アトラシアン サポートのサポート対象外のご質問の場合には、Community もご活用ください。

要約

SQL query to retrieve build jobs that contain a Docker Task and information regarding that task.

環境

Tested on Bamboo 7.2.4 with MySQL.

If your Bamboo instance is connected to a different DBMS, the query needs to be translated to the corresponding syntax.

ソリューション

データベースの変更を行う場合は必ず事前にバックアップを取得してください。可能な場合は、まずステージング サーバーで SQL コマンドの変更、挿入、更新、または削除を行うようにします。


Run the following SQL query against the Bamboo database:

MySQL
SELECT P.TITLE AS PROJECT_TITLE,
       B2.TITLE AS PLAN_NAME,
       B.TITLE AS JOB_NAME,
       B.FULL_KEY AS JOB_KEY,
       CONCAT('<BAMBOO-URL>/build/admin/edit/editBuildTasks.action?buildKey=',B.FULL_KEY) AS JOB_URL,
       SUBSTRING_INDEX(SUBSTRING_INDEX(XML_DEFINITION_DATA, '<key>commandOption</key>
          <value>',-1),
           '</value>',1) as COMMAND,
       SUBSTRING_INDEX(SUBSTRING_INDEX(XML_DEFINITION_DATA, '<key>repository</key>
          <value>',-1),
           '</value>',1) as REPOSITORY
FROM BUILD_DEFINITION
JOIN BUILD B ON
    (BUILD_DEFINITION.BUILD_ID = B.BUILD_ID)
JOIN PROJECT P ON
    (B.PROJECT_ID = P.PROJECT_ID)
LEFT OUTER JOIN CHAIN_STAGE CS ON (B.STAGE_ID = CS.STAGE_ID)
LEFT OUTER JOIN BUILD B2 ON (B2.BUILD_ID = CS.BUILD_ID)
WHERE XML_DEFINITION_DATA LIKE '%task.docker.cli</pluginKey>%'

注意事項

This query only retrieves the details of one Docker task in a given build job, and it's always the last one. This means that, if there are two or more Docker Tasks within the same job, only the last one will be retrieved.

tip/resting Created with Sketch.

Replace <BAMBOO-URL> with your Bamboo instance URL in order to get the direct URL to the jobs in the query results.

Output data sample
PROJECT_TITLEPLAN_NAMEJOB_NAMEJOB_KEYJOB_URLCOMMANDリポジトリ
Test ProjectPlan 1Default jobDTB-PLAN1-JOB1<BAMBOO-URL>/build/admin/edit/editBuildTasks.action?buildKey=DTB-PLAN1-JOB1pushregistry.adress:port/namespace/repository:tag
Project 2ビルド計画Second jobDTB-PLAN1-JOB2<BAMBOO-URL>/build/admin/edit/editBuildTasks.action?buildKey=DTB-PLAN1-JOB2ビルドrepository-path



最終更新日 2021 年 8 月 9 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.