We're currently have a non-cloud/virtualized server set up and are looking to move to something like kubernetes in the future. Our system is basically a configuration driven pipeline that changes very regularly (real client requests, not just bug fixes) and we need to be able to change these configurations in an isolated environment.
Long story short, we're trying to build out a configuration versioning system where each configuration has different versions and each version has a status (testing/staged/live). Within an environment, we need to be able to access different versions of the same configuration and be notified when new versions are available/change status in order to trigger tests. This is all to get around the fact that our environments (dev/beta/prod) aren't fully under our control and have significant differences so we need a stable way to test on prod unfortunately (the woes of a large company).
Anyone know of any configuration management frameworks/content repositories that fit this use case? I've looked into chef, ansible and puppet and all three rightfully don't support availability of multiple versions of the same cookbooks/playbooks/modules on the same node.