Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

Otter: Best practices for segregating pre-prod and prod Rafts



  • After I mistakenly applied a change to our production build servers that broke some builds, I am pondering how I can implement the concept of "pre-production". I am currently using a Git Raft for the default raft. I am thinking that I can create a second Raft, that uses the same Git repo but a different branch?

    I was also thinking of having a second Otter Server instance for the pre-production environment whose Default raft points to the same Git repo, but a different branch.

    Some goals:

    1. Make moving servers between environments as simple as merging Git repos and moving servers from pre-prod to prod Otter environment
    2. The process should be clear, and not prone to mistakes or errors


  • Great questions.

    a second Raft, that uses the same Git repo but a different branch?

    This was definitely something we considered when designing rafts... i.e. the ability to "promote" changes between environments. This is somewhat common in other IaC tools, such as Chef, where a cookbook is tied to a git repository. Some folks will use branches in this "promotion" manner.

    I was also thinking of having a second Otter Server instance for the pre-production environment

    This is fine; actually, our licensing model is designed for this. One instance of Otter managing pre-production servers (typically free), then the other instance managing production servers. Obviously you loose the unified visualization, but a lot of folks prefer having two totally different dashboards anyway.

    A lot of folks will also set up a second instance of Otter as more of a "Sandbox". It isn't to "test" the configuration plans, but more to test extensions, play around, try upgrades, etc.

    hope that helps.


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation