On Tuesday, November 5, 2013 9:11:38 AM UTC-6, Martin Langhoff wrote:
>
> Hi Puppeteers,
>
> When you have complex/rich classes, and large numbers of machines/VMs,
> sometimes there is a machine that needs a temporary override on a
> file.
>
> Is there a way to say something like... ?
>
> node 'fqdn' { # I work for RL :-)
> include rl_users
> include rl_base
> include rl_webserver # defines /etc/httpd/conf.d/foo.conf
> ignore File['/etc/httpd/conf.d/foo.conf']
> }
>
> or something conceptually equivalent?
>
> I know of a couple inelegant options: I can disable puppet on that VM
> for the duration, or comment out the relevant class.
>
> A more precise override/ignore is of course better, as other
> components of the configuration are still applied correctly.
>
>
You could consider just shutting down or deactivating the puppet agent on
the affected machine for the duration of the override. For example, run
puppet agent --disable
there and afterward run
puppet agent --enable
. If that's not viable, then something close to the idea you proposed
should be possible:
node 'fqdn' { # I work for RL :-)
include rl_users
include rl_base
include rl_webserver
File<| title == '/etc/httpd/conf.d/foo.conf' |> {
ensure => 'present',
content => undef
# override other properties to undef (no quotes)
# as needed.
}
}
John
--
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/51512008-1240-4fe1-af23-0938f4e7c0ff%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.