Issue #5517 has been updated by Josh Cooper.
If you eliminate inheritance, then the following will achieve the same effect
and works in the current 2.6.x and 2.7.x branches:
<pre>
node default {
include autofs::sysconfig::default
}
class development_node {
include autofs::sysconfig::development
}
class autofs::sysconfig::common($master_map) {
class { 'autofs::sysconfig':
basedn => "ou=xxx,o=yyy",
master_map => $master_map
}
}
class autofs::sysconfig::default {
class { 'autofs::sysconfig::common':
master_map => 'some_master_map_name'
}
}
class autofs::sysconfig::development {
class { 'autofs::sysconfig::common':
master_map => 'development_master'
}
}
</pre>
----------------------------------------
Bug #5517: behavior change within 2.6 makes it impossible to override class
parameters of "included" parametrized classes
https://projects.puppetlabs.com/issues/5517
Author: Peter Meier
Status: Accepted
Priority: High
Assignee: Nick Lewis
Category: language
Target version: 2.6.x
Affected Puppet version: 2.6.3
Keywords: parameterized_classes
Branch:
In 2.6.1 the following recipe:
<pre>
class a(
$b_c = { 'b' => 'foo' }
) {
notice $a::b_c
if $a::b_c {
notice $a::b_c['b']
}
}
class b {
class{'a': b_c => false }
}
class b::c inherits b {
Class['a']{ b_c => { 'b' => 'bleh' } }
}
class b::d {
include ::b::c
}
include b::d
</pre>
produces the following output:
<pre>
$ puppet foo.pp
notice: Scope(Class[A]): bbleh
notice: Scope(Class[A]): bleh
</pre>
Which is what I expected. However with 2.6.3 it produces the following output:
<pre>
# puppet foo.pp
notice: Scope(Class[A]): false
</pre>
Imho likely the changes for #4778 and #5074 are responsible for that behavior
change.
However this makes it impossible to overwrite parameters of a "included"
parametrized class in a subclass. There are only ugly workarounds for that
problem and I think this should actually work as it did within 2.6.1. Otherwise
the usefulness of parametrized classes is quite reduced.
--
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.