Deploying feature branches without knowing what they are

I need some help figuring this out.

We’re working with a modified GitFlow (ok just feature branches right now) and I need to improve how we test things. Right now, we make a pull request, which is reviewed and then put into develop which is then pushed to alpha (we have 1 lifecycle which is alpha-beta-production). Because we’re doing WebRTC work with native (iOS, Android and Windows) apps, we cannot reliably test things locally so we sometimes just deploy a branch to alpha.

What I want to is give every feature branch its own server automatically. So if I start working on feature/JIRA-1232_cool_new_feature I’m going to be able to use jira-1232.example.com for my local testing, and later the QA team and/or code reviewer can test that ticket in isolation before merging to develop.

Given the nature of this work, and corporate rules, I have to run these in our own datacentre and I can’t get programatic access to create new virtual machines. Since the web side of things is all proxied through nginx, I can run an arbitrary number of instances on a single box and point a wildcard at it.

Any suggestions?

Hello,

Thanks for getting in touch. In Octopus Deploy Channels are a good way to start to configure where deployments will go based on rules. We have a section covering feature branch deployment

For the nginx side of your query, it sounds like that approach will work, you can have many separate projects deploying to a single instance, if you can ensure each installation will be reachable.

You may be interested in another Octopus Deploy feature called Tenants that you could combine with the usage of channels which will let coordinate deployments of the feature branched versions to a set of Tenants. The tenants may be named after users/testers, or any other logical partitioning relating to how you feature branch.

Your best bet will be to set up some simple projects that extract their feature branch package onto your shared infrastructure and just see how it runs with Channel rules and Tenants.

Regards,
Nick

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.