Issue #5045 has been reported by Paul Berry.
----------------------------------------
Bug #5045: External node classifiers should be able to specify parameters for
parameterized classes
https://projects.puppetlabs.com/issues/5045
Author: Paul Berry
Status: Accepted
Priority: Normal
Assignee: Paul Berry
Category: language
Target version: 2.6.x
Affected Puppet version:
Keywords:
Branch:
Currently, parameterized classes cannot be invoked by an external node
classifier because there is no way to specify parameters. For example:
Manifest:
<pre>
class foo($customizeable_file_name) {
file { $customizeable_file_name: ensure => present }
}
</pre>
Data output by external node classifier:
<pre>
---
parameters: {}
classes:
- foo
</pre>
This produces the error message:
<pre>
Must pass customizeable_file_name to Class[Foo] at ...
</pre>
I propose that we change the format for data returned by the external node
classifier so that "classes" is a hash rather than an array, where each key is
a class to invoke, and the corresponding value is a hash of parameters to pass
to the class. Non-parameterized classes can use a value of either {} or nil.
For example:
<pre>
---
parameters: {}
classes:
parameterized_class:
param: value
normal_class_1: {}
normal_class_2:
</pre>
For backward compatibility we should also support the old format; if "classes"
is an array, then all the classes are interpreted as taking no parameters.
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://projects.puppetlabs.com/my/account
--
You received this message because you are subscribed to the Google Groups
"Puppet Bugs" 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-bugs?hl=en.