Branch per feature deploy

(blake.duffey) #1

Looking for help on a build/deploy situation

A dev team gave me the following challenge: They have 2 branches in a single Azure DevOps server project (they call the branches dev and test) - they essentially toggle between the two, incrementing the version number - so they want any commit to DEV branch to deploy to DEV site and they want any commit to TEST branch to deploy to TEST site. (I’m told DEV never gets ‘promoted’ to TEST)

I don’t see how i can use the normal Automatic Release Creation (because I can’t have more than one per Octo project). I started using the Azure DevOps extension to create the release/deploy but the release number defaults to ‘latest’ (which might not be the case).

Has anyone seen this? My thought was to append -dev and -test to the package name and try to route it via a channel but I’m not sure.

Any thoughts appreciated.

(Daniel Fischer) #3

Hi Blake,

Thanks for getting in touch! It looks like you are on the right track here. Using the pre-release tags on you packages alongside Channels would be the best method for managing these branches.

You may have already looked into Channels but I thought I would post a link to our documentation on Channels anyway.

If you have any further questions here, or run into any issues, please let me know. :slight_smile:

Best regards,
Daniel

(blake.duffey) #4

I can only have one automatic release creation per Octopus project, correct? So using channels doesn’t completely solve the issue?

(Daniel Fischer) #5

Hi Blake,

Thanks for getting back. In your initial question, you mentioned previously using the Azure DevOps extension to create the release. If you are using multiple channels, we would suggest avoiding the built-in ARC feature and try to use the DevOps extension to manage your release creation. We have a section in our documentation on ARC where we note several limitations when using it in conjunction with Channels.

We generally suggest using the Create Release step on your build server where possible. The ARC feature is mostly made obsolete with the use of our plugin.

The extension will allow you to define a Channel to use for the release creation. When you create a package with the -dev tag and supply the dev Channel in the Create Release step of your build, Octopus will create the release for the dev Channel and use the version rules you have defined inside the Channel to select the desired package.

Let me know if this helps here, or if you are still stuck on this.

Best regards,
Daniel

(blake.duffey) #6

I’m having an issue using the extension to create releases (I have an open thread with Henrik Anderson)