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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,551,708
Community Members
 
Community Events
184
Community Groups

Dynamic git source code checkout

Hello,

I'm trying to achieve a git checkout of a specific tag/commit controlled by the execution of the build process.

In the plan configuration, I defined the repository to use a variable as a branch

Screenshot from 2019-06-06 15-10-19.png

For it to work a default value must be assigned as a Plan variable, here using masterScreenshot from 2019-06-06 15-09-55.png

Then in the build execution this variable value is overridden with a specific commit hash.

 

My issue is that when the corresponding Source code checkout task is executed, it is first checking out the repository before substituting the variable.


simple 06-Jun-2019 14:41:24 Starting task 'Checkout' of type 'com.atlassian.bamboo.plugins.vcs:task.vcs.checkout' simple 06-Jun-2019 14:41:24 Checking out into /ec/local/citnet/bamboo-agent-home/xml-data/build-dir/DISSCHAIN-DISSCHAINSOA25-REE/disschain-impl/extraction simple 06-Jun-2019 14:41:24 Updating source code to revision: 94b8954182c9d96cb7f511b0a62caf226eb76b7a command 06-Jun-2019 14:41:24 Substituting variable: ${bamboo.sources.release.tag} with 99b82efeed26c459d79d29cfd7d38226b88c55e8

So I end up with the wrong content.

I suppose the issue is because the repository is pooled for Change Detection by the Bamboo build upfront, but that is not what I need. In my case this is a copy of the main repository

I hope there is another configuration to achieve such dynamic checkout, but I need help finding it please...

 

 

1 answer

0 votes
Daniel Santos
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
Jun 10, 2019

Hello @Philippe Weber

I think I understand what you need, but I also know that you cannot achieve it using the strategy you planned.

Bamboo will now allow you to change server instance variables. The best you can do is to change them in the terminal, but that will not serve to your purpose. Tasks run from JAVA runtime which evaluates the variables before running the command on terminal.

Reference on variables not being overwritten:

I see two options for you to move forward:

  1. Run a customized build
    You will be able to give a specific value to any plan variables if you run a customized build. More details at: Running a plan build manually.
  2. Check out your code from a script task
    You won't have the facilities of a task or shared credentials for this, but you should be able to check out any repository as you can from your terminal.

I hope that helps.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events