I have a bamboo plan with a maven task. I need to pass a maven parameter with the name of the branch.
I can use the variable ${bamboo.repository.branch.name} for this.
However, I need to override this value for some branches (see https://answers.atlassian.com/questions/267198/bamboo-variable-regex).
So, in my bamboo plan I define a variable called "branchName", with value "${bamboo.repository.branch.name}".
then, my maven task uses ${bamboo.branchName}, and the branches can override the "branchName" value when neceserary.
So, is this possible? can my bamboo plan variable "branchName" use another variable "${bamboo.repository.branch.name}" as default value?
Well, I tried, and the result is unclear.
If my maven task is:
mvn verify -B -Dsonar.branch=${bamboo.branchName}
this does not work. it executes mvn verify -B -Dsonar.branch=${bamboo.repository.branch.name}
However,
If my maven task is:
mvn verify -B -Dsonar.branch=${bamboo.branchName} -Dignore_var=${bamboo.repository.branch.name}
then ${bamboo.branchName} gets substituted as expected,
and it executes mvn verify -B -Dsonar.branch=develop -Dignore_var=develop
Why is that? Is this a bug or a feature?
So, how to achieve this correctly?
that is, I need a bamboo plan variable "branchName" with a default value of "${bamboo.repository.branch.name}",
which can be overridden by branch plans.
You may want to try the nested plugin. That way you could set a variable to "${bamboo.repository.branch.name}" but when evaluated it will give you the value of the inner variable.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.