On Friday, October 17, 2014 12:29:32 PM UTC-5, Vladimir Brik wrote:
>
> Hello, 
>
> Is it possible to override parameters of a class using a collector? 
> (similarly to 
>
> https://docs.puppetlabs.com/puppet/latest/reference/lang_resources.html#amending-attributes-with-a-collector)
>  
>
>
> The following gives "Resource type cls doesn't exist" error: 
>
> class cls($arg="default"){notify{$arg:}} 
>
> node foo 
> { 
>         Cls <| |> {arg => "override"} 
>         class{'cls':} 
> } 
>
> It works if I change "class" to "define" though. 
>
>
Yes.  Classes are not resources, though the DSL downplays the distinction.  
There is simply no way to implement class parameter overriding that can 
work reliably.  On the other hand, defined type instances *are* resources, 
just like instances of native types such as File.  


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/9bf9a6e9-3a36-47f7-912f-6427ff7b115b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to