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 は除く
本記事で説明している手順は、現時点でのものとなります。そのため、一部のお客様で特定の状況下で動作したという報告がありますが、正式にサポートされているわけではなく、お客様の特定のシナリオで動作することを保証するものではありません。
本番環境での実施の前に一通り非本番環境で検証し、成功しなかった場合にはサポートされている代替案にフォール バックしてください。
要約
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:
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.
Replace <BAMBOO-URL>
with your Bamboo instance URL in order to get the direct URL to the jobs in the query results.