Is there a way to perform a release build in Bamboo?

Is it possible to have an action performed when a person clicks "Create release" in Bamboo? I was thinking of using a workflow for my builds like the following.

  • Developer commits to source control
    • Build and tests run
  • Completed build is promoted to a release
    • Create a new release in Bamboo
    • Run build to change the version number in the project and repackage
    • Upload change to external service (such as a Maven or Rubygems repository)
    • (optional) Commit changes to the repository for updating the version number
    • Tags VCS with the release version
    • Trigger any automatic deployments
  • Trigger deployments
    • Perform deployment steps

Is there a way to do this with Bamboo? Is there an alternative workflow that I should consider instead that allows me to include the release version in the compiled product and modify the SCM? I've been finding problems doing this as part of a deployment plan because the release build needs to be performed once while I may have multiple environments I need to deploy to.

If I try to do this during the build plan, I can't take advantage of the release versioning feature and the release build still won't be triggered if somebody pushes "Create release". Any help would be appreciated.

1 answer

This widget could not be displayed.

 

You can do a build as part of your release plan. All of the build tasks are available in the release but that would defeat the idea of releasing a build. You've created a new build so your not really release what you built, and presumably tested. 

But I share your problem.  How can a label a build when I don't know what release version will be? WHat I did is label the build with the build ID. The build number can always be used to trace back to the release history.

You can also use the planKey & build number as part of your release version. See "add variable to version".

 

How do you solve the problem where binaries contain the release version number? E.g. version info resource in DLL's and EXE's

As I understand it, does that mean I have to have a build plan (for testing pull requests) and a separate release plan? Is there anyway to leverage the "Create release" button in that case or do I have to make it so every build performed in the "Release plan" is a release? There doesn't seem to be a way to link two different plans to each other in the UI.

I'm not sure if I understand but I'm sure the answer is no. The whole "Create Release" is pretty weak.

Jonathan, did you find a solution yet? I'm in a similar situation and asked Atlassian Support. They created an improvement request, but my hopes are low given the complexity this would probably introduce into Bamboo: https://jira.atlassian.com/browse/BAM-16231

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted yesterday in Jira

What modern development practices are at the heart of how your team delivers software?

Hey Community mates! Claire here from the Software Product Marketing team. We all know software development changes rapidly, and it's often tough to keep up. But from our research, we've found the h...

78 views 0 1
Join discussion

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you