Bamboo deployment project conditionals

Nicolas Vila April 24, 2018

Hello!

I'm configuring Bamboo for deployment to different environments (development, qa, staging, production). I'm looking for a way to have a condition to exist before enabling a build, for example if a certain JIRA ticket is closed then (and only then) we should deploy in production.

Currently I have a separate project for each environment, each with its build plan. I have granted specific users the ability to run a build&deploy (since specific groups should be able to deploy only on their specified environments), but the idea would be to have an OK from several people before enabling the production deployment.

 

Any suggestion regarding how to accomplish such a thing is much appreciated.

Kind regards.

1 answer

1 vote
Gabriel Ribeiro
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 27, 2018

Hi Nicolas,

I think you'll not be able to do that directly in Bamboo, the easiest way would be to set these conditions in JIRA and then trigger the deployment calling a Bamboo REST API using a Webhook

Nicolas Vila April 27, 2018

Hello Gabriel,

Thanks for your reply. The thing is, we mustn't run the deploy task automatically. Your reply did give me an idea: we could set the conditions in JIRA and then call the bamboo API to mark the release as 'approved' by user JIRA, and then put a script that checks if user JIRA has approved the release. Does that make sense?

 

Kind regards.

Gabriel Ribeiro
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 27, 2018

Hi Nicolas,

Yes, your idea makes sense. I never tried to implement this before, but I think the most challenging thing will be to get the {deploymentVersionId} from the specific release you want to edit.

As you can see, the API endpoints require this info:


Show current status:

http://<bambooURL>/rest/api/latest/deploy/version/{deploymentVersionId}/status 

Change status:

http://<bamboo URL>/rest/api/latest/deploy/version/{deploymentVersionId}/status/UNKNOWN|APPROVED|BROKEN|INCOMPLETE

Interesting resource:

 

Thanks

Like Poojatr likes this
Poojatr September 9, 2019

Hi,

I tried by https://<bamboo URL>/deploy/viewDeploymentVersion.action?versionId=87648402

But the number 87648402, is not the deploymentVersionID, 

Did you get any method to extract the deploymentVersionID?


Thank you

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events