Issue #12789 has been updated by Thomas Sturm.
Hi Chris,
thanks for taking care.
Here is a simple test, this is the base class with a define:
<pre>
class test {
file_definition {
"/root/puppet-test":
ensure => present,
content => 'Test successful';
}
}
</pre>
<pre>
define test::file_definition(
$ensure,
$content = ''
) {
file {
"$name":
content => $content,
ensure => $ensure;
}
}
</pre>
This is the class that overwrites the defined type 'file_definition':
<pre>
class test::test_disabled inherits test {
File_definition["/root/puppet-test"] {
ensure => absent
}
}
</pre>
This does not work when test::test_disabled is assigned as include in another
class or via ENC, but it works when assigned in the node manifest directly.
----------------------------------------
Bug #12789: Overwriting a class that's using a definition fails
https://projects.puppetlabs.com/issues/12789#change-55907
Author: Thomas Sturm
Status: Needs More Information
Priority: High
Assignee: Thomas Sturm
Category: class inheritance
Target version:
Affected Puppet version: 2.7.6
Keywords:
Branch:
Hello,
please apologize if this was reported elsewhere already...
We have class X that's included in the default node. The class uses a defined
type of the same class with ensure => present. We also have class Y that
inherits X and sets this defined type ensure => absent. If we assign Y to a
node via another class or via ENC, it does nothing. The defined type is still
ensure => present. However, if we assign class Y via a node definition, it
works, the define is ensure => absent.
Overwriting native puppet types always works, but as soon as you are
overwriting a definition, the overwrite does just nothing.
If this is supposed to work, I think we hit a bug here...
Best regards,
Thomas
--
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.