nicolas <ncapp...@yahoo.fr> writes: > For these applications, we need to have a very good control. So we'll > never update them via local update utility nor use an ensure => latest > We always use ensure => x.y.z > We also need to be able to do rollback, so it's simpler to remove > everything from say, version 1-3-2, and then apply version 1-3-1 > > I understand that our needs are specific, but there is something that > surprise me with Puppet : if you don't explicitly remove something > that was deployed previously with Puppet, then it stays
There are other software configuration tools, such as bcfg2[1], that take an approach similar to what you describe here: they treat anything not configured as an aberration and remove it. They are generally more painful to use than puppet by an order of magnitude, and practically impossible to nicely introduce to existing infrastructure, at least in my experience. You can have much the same effect with puppet using this, by the way: Package { ensure => absent } # repeat for whatever you want strictly managed... > For example, say you have a mount point A that you manage with Puppet > For some reason, you need to change this mount point, now call it B. > We could expect that if your manifest first contains A, then contains > B, your intent is to remove A and creates B This describes a situation where puppet records changes in state and applies the delta between two configurations. What, instead, puppet actually does is apply the configuration defined at any point in time, without state or reference to history. In general, the only tools that work that way are the big graphical centralized management tools, in my experience. [...] > Any reasons why Puppet forces to explicitely remove everything that it > previously installed (and that is known, thanks to localconfig.yaml > file on nodes) ? Because it can't derive your intention automatically: you /could/ want it removed, or you could want it unmanaged, and assuming you want it removed is (generally) more destructive. Regards, Daniel Footnotes: [1] They may have changed this in the last year or two since I reviewed the tool, but this more illustrative than a genuine pointer. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---