On Fri, May 11, 2012 at 3:57 AM, Luke Bigum <[email protected]> wrote:
> Hello,
>
> Is it possible to override a resource that is created with the
> create_resource function?
>
> This manifest does not compile:
>
> ------------------
> $hash = { 'msg' => { message => 'woof' } }
>
> class base {
> create_resources('notify', $hash)
> }
>
> class over inherits base {
> Notify['msg'] { message => 'meow' }
> }
>
> class { 'base': }
> class { 'over': }
> -----------------
You can't declare both classes, but you can override resources in
class over, because we can merge hash values before calling create
resource.
The example here is obviously contrived, but I assume you have a
bigger hash you want to merge. The merge function comes from stdlib:
# don't inherit base we can create the resources here instead.
class over {
$local_setting = { 'msg' => { message => 'meow'} }
$newhash = merge($local_setting, $hash)
create_resource('notify', $newhash}
}
Thanks,
Nan
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.