Deprecated extension points and APIs
Sections
These APIs and extension points are deprecated, and will be removed in future releases.
Puppet Faces is a private API
The Puppet::Face
and Puppet::Indirector::Face
classes are private APIs, and we don’t document or support them. Don’t use them. Instead, to develop command line applications that use Puppet’s data:
- Pick a popular, well-maintained Ruby framework for CLI apps, such as Thor or Commander.
- Use Puppet’s public Ruby APIs to access its settings and data. See the developer documentation for information about the classes and methods available for this.
- Distribute your application as a Gem or native package, instead of as a Puppet module.
- To make your command available as a
puppet <NAME>
-style subcommand, name itpuppet-<NAME>
and put it in your$PATH
. When you call it, you can leave out the hyphen.
Resource type and provider APIs
As of Puppet 5.0, the resource_types
API endpoint has been removed. Instead, use Puppet Server’s environment_classes
endpoint.
The Puppet.newtype
method on the top-level Puppet
module is a proxy for Puppet::Type.newtype
. The Puppet.newtype
method will be removed in a future release. Update any custom resource types to use Puppet::Type.newtype
instead.
Miscellaneous APIs
The Puppet::Node::Facts#strip_internal
method has been removed as of Puppet 5.0.
Previously, the stacktrace
property in HTTP error responses was always empty for security reasons. In Puppet 5, we’ve removed the stacktrace
property as it serves no purpose.