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,559,397
Community Members
 
Community Events
184
Community Groups

How to build docker image from yaml specs?

I want to build a docker image from a Bamboo YAML Specs. I tried to do the following:

- scripts:
- docker build <dockerfile-dir>

But the default agent doesn't have docker. So, I get an error telling that docker cannot be found. I have a remote agent that has docker. How can I force to run the job on the remote agent?

I guess, I need to specify requirements. But I haven't found any resources, which would tell how to specify docker in the requirements.

I'm running Bamboo 6.4.0.

1 answer

0 votes
Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
Apr 10, 2018 • edited

Hi Andrew,

You can find this link having steps to define your job requirements. You would just have to create a custom capability in the appropriate agent(s) in Bamboo UI, and specify it as a requirement for this job. It looks something like this.

---
project:
  key: DRAGON
  plan:
    key: SLAYER
    name: Dragon Slayer Quest
stages:
  - jobs:
      - scripts:
          - echo 'Going to slay the red dragon, watch me'
        requirements:
          - isDragonLazy
          - isDragonAsleep
          - isCaveDeep
...

 Did this help?

Hi, Jeyanthan! Thanks for the quick reply.

I haven't tried it, yet. I believe that it should work. But is there any more general way of doing it? Is there any builtin keyword or variable, that corresponds to the Docker capability?

For example, here they say that there are some kind of Executable capabilities. How can I refer to them in the requirements field?

Hi,

 

I have the exact same problem. I can't get my build to run docker on the host machine.

Creating custom capabilities doesn't scale well. Docker is already shown as one the executable capability for the agent

 

An example would really help

 

Thanks 

Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
Jul 04, 2018 • edited

Hi Nasir,

Your issue might need further investigation from our support side. You can, however, find the examples to work with Docker in our documentation here (you need to alter the URL to match your Bamboo version).

Hope that helps.

Hi,

So I can't use the new Docker tab for our builds as it seems like it expects a pre existing docker image. 

What our build does is create a new docker image, run some tests against it and then push the image to Artifactory. 

I will give the custom capability a try but the yaml specs seem non functional to me as they can only do simple stuff (which I can't get to work) and not the same as java specs.

 

Also it doesn't support git flow (Atlassian boasts about a lot!) i.e. make changes to the yaml file per branch and only affect that branch until you merge to develop and so on.

 

regards,

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events