Lets say there are 2 code branch and their associated pipelines for Continous Integration-
- Regular branch for current release
- future branch for future release [New]
You may have 2 different agile teams working on each of the above branches.
So obiviously for the future branch code we had to provision another set of parallel infrastructure for DEV, QA and UAT
Now comes the tricky part for implementing the Octopus deploy part for the second parallel infra.
Initial analysis may suggest we have to duplicate the existing project, variables, steps etc. But this is bruteforce method, the correct way to implement such a scenario is by using channels in Octopus deploy.
Its a very interesting that the team at Octopus already knew such a situation might occur where we start duplicating projects and creating a mess. Hence they introduced the neat and clean way to accomplish this.
Step 1: Create a new Lifecycle
Step 2: Go to Project > Deployments > Channels
Step 3: Add a new channel, associate it with lifecycle created in step 1.
Step 4: Create a version rule that is applicable to this channel**
**The way the channel works is when a new artifact is created in azure artifactory, it checks for the revision number.
Based on version rule defined in the channel it determines which channel processes the new artifact.
Octopus Deploy Documentation can be found at [Octopus Channels]: https://octopus.com/docs/releases/channels
Top comments (0)