Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Download all artifacts from previous jobs

Is it possible to download the artifacts created by ALL previously executed jobs without specifying the exact artifact name?

I use spec branches to enable/disable jobs based on the branch type (f.e. release branches need to execute additional builds). At the end of the Pipeline I want to download all artifacts (number of artifacts can be different based on the branch type) and share them as an "all_artifacts" artifact. 

I am not able to use the download all aritfacts task because this task also demands the "all_artifacts" artifact. Is there any solution for this topic?

1 answer

1 accepted

1 vote
Answer accepted

Hello @Simon Beyer,

Welcome to Atlassian Community!

Your requirement is not possible to be achieved using standard tooling in Bamboo. You can possibly try extending Bamboo and run a series of scripts that will do that artifact parsing and download then.

For example:

To get information about a build, you can run a curl:

curl -X GET -uuser:pass -H "Accept: application/json" "https://bamboo.mydomain.net/rest/api/latest/result/BAM-SLEEP-34?expand=artifacts"

You can then parse the output of it using your favourite script/programing language and figure out what artifacts are carried with that build.

Then download them (date.txt is my artifact, for example):

curl -X GET -uuser:pass https://bamboo.mydomain.net/browse/BAM-SLEEP-34/artifact/shared/date/date.txt -o date.txt

Once you have all the artifacts you need you can then publish them as "all_artifacts" (as a folder with multiple files or as a single zip archive, your call)

The values of your projectKey-buildKey-buildNumber keys can be expanded in real-time from Bamboo variables:

E.g.

https://bamboo.mydomain.net/browse/${bamboo_planKey}-${bamboo_buildNumber}/artifact/shared/date/date.txt

It is also recommended that you store the values of your username and password or the PAT (personal access token) as encrypted strings in Bamboo.

 

Regards,

Eduardo Alvarenga
Atlassian Support APAC 

EDIT: sorry I posted this as answer.

Thank you. This looks promising. But I trouble with downloading the artifact. My artifacts contain multiple files and not just one like in your example. 

Once you query the artifacts, you will get a json output that can be parsed to get the name of all the artifacts of that build.

Then you can create another call in a loop to download each of them to your desired location.

Regards,

Eduardo Alvarenga
Atlassian Support APAC

Like Steffen Opel _Utoolity_ likes this

Thanks. But is there an easier way to get a list of all files which are included in on artifact? I am only able to receive the overview html page

If you want to have a list of files to be downloaded, you will need to parse that overview page.

You can alternatively use a script task to create a single zip file out of your all_artifacts folder, then you can focus on downloading a single zip file and unzipping it at the destination.

Like Steffen Opel _Utoolity_ likes this

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Bamboo

Bamboo Data Center 8.1 is now available

G’day Bamboo customers, Bamboo DC 8.1 is now available with it the following features and programs: SAML 2.0, OpenID Connect, and Crowd SSO In order to help admins with a simplified user manage...

149 views 0 4
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you