Issue #2955 has been reported by Luke Kanies.
----------------------------------------
Feature #2955: Classes should be able to statically declare platform support
http://projects.reductivelabs.com/issues/2955
Author: Luke Kanies
Status: Accepted
Priority: Normal
Assigned to:
Category: language
Target version: Rowlf
Affected version: 0.25.1
Keywords: class, syntax, platform
Branch:
Classes are generally developed with limited platform support - tested only to
work with Debian or whatever. The class developer should be able to declare
this fact, and potentially Puppet should fail when a class is attempted to be
used on an unsupported platform.
It's preferred that the syntax resemble our standard confine syntax:
<pre>
class foo confine($operatingsystem => [debian, solaris]) { ... }
</pre>
That syntax isn't ideal, but it gets the main idea. Unfortunately, it needs to
support some level of depth -- e.g., confine to a specific platform and
version, or even to arbitrary data (which, of course, would need to be set for
the class to be used).
It might be that this information is better specified at the level of the
module rather than the class, in which case the failure modes are the same but
we don't need additional syntax.
We also should probably support some kind of system-level policy that says
breaking this requirement is either a failure, a warning, or ignored. Or,
maybe we should support a means for users to override this data -- if they're
using an unsupported platform but they've tested it and it works, they should
be able to declare that. And, of course, if they can't run code on an
unsupported platform, they can't actually test to confirm it works or doesn't.
It might be that we need multiple terms to differentiate between "haven't
tested", "tested and doesn't work", and "should not be allowed".
Again, setting to rowlf but unlikely to be included.
--
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://reductivelabs.com/redmine/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.