I've too have been looking at workflow as part of a move to puppet 4 and I'm confused to hell and back ;) .
Currently we have a single CA Master and a number of production compilation masters and a production puppetdb, there are also a number of test compilation masters and a test puppetdb. We run with essentially 2 branches, one for production and one for test each being deployed *without *r10k to their respective compilation servers. The changes in the production and test branches are synchronized using meldmerge. Personally I'd like to get away from this model and actually introduce a more rigorous peer review process, our software development teams use Gerrit and our puppet code is actually in this server we just don't currently use the features. The things I've been reading suggest that having long running branches for what people seem refer to as application tier (dev, prod, test etc) is bad practice and you should have a single main branch with possibly a 2nd one for integration testing. Work is done in short lived branches that are merged into the main line when the work is complete. Membership of dev, prod, test etc is determined by facts on the node. There are still some issues I don't really understand though. It would appear that puppetdb doesn't support environments all that well either so it would follow that assuming we want to maintain a production and test estate for the servers we are maintaining then from a puppet infrastructure perspective you'd still have a Puppet CA, a number of production compilation servers with a puppetdb, and a number of test compilation servers with its own puppetdb. Either of these could have multiple temporary environments deployed on them (hotfix branches on the prod compilation servers and feature branches on the test compilation servers) but ultimately each main application tier (prod or test) is actually deployed from the same branch but from different points in time. Unfortunately it would appear r10k doesn't support looking at a specific tag of the control repo so not sure how you'd work round that either. Am I just being naive and foolish or is this kind of workflow possible or even desirable ? -- 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 puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/b0ceac18-cc41-49b8-829a-c7a581f44ac6%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.