We've started to feel the pain of this so have just got a process running.
The main puppet tree lives in svn and consists of the majority of service modules, we're only deploying to CentOS boxes so this makes it relatively easy. We have: * two environments - development, production * three puppetmasters - dev, testing, production * Jira system to log changes/requests/additions to application and service modules. Various application manifests/modules are svn:externals to the related project, that way ops team can own service/generic modules while application teams can develop app specific modules. The puppet trunk can be checked out, modules changed or different versioned externals pulled in, build a distribution, then release to the dev environment and test. Once a puppet release to production is required, a release is built from the puppet trunk and deployed to the testing master, then finally to the production master. Rollback is in the form of deploying the previous distribution. Issues -- The development master can be a bottleneck. -- Concurrent work streams on application / service modules can cause a release to be bad. This is our first stab at it, and i'd like to investigate how people are using environments and tags to always have a releasable puppet trunk. 2009/7/17 Teyo Tyree <t...@reductivelabs.com>: > In the course of training and consulting with Puppet, the question of change > management best practices has come up over and over again. On the edges, we > have small teams that can get away with simply version controlling their > code using an SCM as an incremental backups while rolling out change in a > fairly adhoc fashion and larger teams that need branches, QA, and DEV > environments, and perhaps even separate repositories for each module. There > is also the issues of roll back and testing. We are curious how the > community approaches these problems in hopes of developing some best > practices. So what do you guys/gals do? > -- > Teyo Tyree :: www.reductivelabs.com > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---