How to manage a Puppet Server with multi-environment and multi-system?

Background:

I am using a `puppet-environments` repository with some branches that represents my environments. r10k provides the sinchronization between repository and Puppet Server. Environments (branches) are something like devel, staging, production.

Every new implementation starts on devel and they are tested on development environments. If everything is ok, these changes are merged to staging, after that to production. One base configuration, one system. So far so good.

Problems start when I try to create a workflow with more than one system that share the same base configuration.

For instance: environments dev and prod; systems A and B.

A) I cannot merge base configurations, eg fix vulnerabilities, from dev to prod because this would also promote configurations of systems A and B. Sometimes base configurations and system configurations does not evolve at the same time. Currently I workaround this creating a branch `root` where all the base configurations are commited; dev and prod receive merge from root. Btw this sounds to me as a poor solution, I cannot think about a fast-forward merge anymore.

B) It it just impossible to use automatic merges to promote system configurations because A and B are not related. So although I am using a super-killer repository, I need to copy files from one branch to another by hand.

I am miserably failing to improve this scenario without creating a hard-to-maintain-workaround. Your ideas and thoughts will be very much appreciated.

--
You received this message because you are subscribed to the Google Groups "Puppet 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/560F1C7A.7070209%40joaomorais.com.br.
For more options, visit https://groups.google.com/d/optout.

Reply via email to