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

Shared Custom Task across different projects/builds

Phill Pafford
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 11, 2022

Example: I have a custom shell script that does a generic task, it's populated with runtime variables that bamboo sets. Currently I have to configure this task on each project I want to execute it on.

 

Idea: have a global task that I could share to many projects/builds, that would pull runtime variables and execute the task

 

Why: If I need to update the logic of this task, I can do it once and apply to all. Currently I have to update all tasks per project

 

 

1 answer

1 vote
Alexey Chystoprudov
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 11, 2022

Take a look at Bamboo Specs https://confluence.atlassian.com/bamboo/bamboo-specs-894743906.html

It was designed exactly for that reason. You can keep code at repository and manage your plans from local machine or configure Bamboo to manage plans by reading code from repository

Phill Pafford
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 13, 2022

Hi Alexey, Thanks for the reply but does SPEC support multiple repos to be pulled in? 

  • repo A has my code
  • repo B would have the shared code I want for 1 task

I know I can just run a git clone and checkout within a script to pull in repo B, but this is kind of a hack. 

Alexey Chystoprudov
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 13, 2022

It's up to you how to organize Specs code.

For example you can have repository with plan configuration, but it's not required to keep it along with your application code if Specs is Java code.

So in your example repo B might keep Specs code which will share common tasks for several plans and then it will be applied when changes to repo B happens.

Your code in repo A is built by plans, which were created by Specs code it repo B and don't need to checkout repo B during plan execution.

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
SERVER
VERSION
7
TAGS
AUG Leaders

Atlassian Community Events