Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Bamboo planbranch setting to prevent deletion pendant in database

HeWi May 16, 2022

I wonder where in the Bamboo database the setting "Clean up plan branch automatically" is stored while creating a new planbranch?

(see 2b: https://confluence.atlassian.com/bamboo/using-plan-branches-289276872.html)

Is it maybe stored in a local database or xml file instead? The scheduler will not delete planbranches having the option deactivated and I would like to understand how Bamboo does make a decision between different plan branches.

1 answer

1 accepted

0 votes
Answer accepted
Eduardo Alvarenga
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 16, 2022

Hello @HeWi

The Plan branch cleanup is defined on the BUILD_DEFINITION table in the database as an XML element within XML_DEFINITION_DATA.

<cleanup><disabled>true</disabled></cleanup>

This query might help you locate that information. Works on PostgreSQL.

SELECT B.BUILD_ID,
       B.BUILD_TYPE,
       B.FULL_KEY,
       BMD.BRANCH_NAME AS "branch_name",
       CASE
              WHEN CAST((XPATH('//branchConfiguration/cleanup/disabled/text()',CAST(BD.XML_DEFINITION_DATA AS XML)))[1] AS TEXT) = 'true' THEN 'NO'
              ELSE 'YES'
       END AS BRANCH_CLEANUP
FROM   BUILD B
JOIN   BUILD_DEFINITION BD
ON     B.BUILD_ID = BD.BUILD_ID
JOIN   BRANCH_METADATA BMD
ON     BMD.PLAN_ID = B.BUILD_ID
WHERE  B.BUILD_TYPE = 'CHAIN_BRANCH'

Regards,

Eduardo Alvarenga
Atlassian Support APAC

HeWi May 19, 2022

Ahh, I see, thanks a lot for your reply @Eduardo Alvarenga , very helpful indeed.

Looking at the column with ntext datatype, it is kind of laborious, if the switch would have to be toggled, I would have to work with temporary tables, doing casting, etc.

Isn't there a simpler way in Bamboo to avoid specific plan branches from getting cleaned up automatically (I don't want to uncheck the planbranches manually)? I have to take two options into consideration:

a) cleanup due to git delete branch

b) cleanup due to branch inactivity

What if I would like to avoid bugfix/ branches from getting cleaned up? Is the only chance to look for bugfix/ branches in the tables and set disabled to true in the XML?

Eduardo Alvarenga
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 19, 2022

Hey @HeWi

Thanks for the feedback. Following the community guidelines please avoid posting different concerns as a follow-up to a question that's been already answered.

If you are satisfied with the first answer please mark it as Accepted and post the next question as a second post and we'll be happy to assist. That eases the web crawler job and enhances indexing (and search) to other users.

Regards,

Eduardo Alvarenga
Atlassian Support APAC

HeWi May 19, 2022

Hello @Eduardo Alvarenga , thanks for your reply and guideline reference. I've followed your suggestion and created another thread: Way to stop automatic planbranch cleanup for specific branch types 

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events