Topics

[ANN] Resource API v1.2 Release

David Schmitt
 

Hi all,

We're pleased to announce that version 1.2 of the Resource API is being released today.

The Resource API provides a simple way to create new native resources in the form of types and providers for Puppet. It is provided as a Ruby gem to be referenced within modules. Support for it has been included as an experimental feature in version 1.4 of the Puppet Development Kit (pdk new provider). Use the resource_api module or the puppet 6 nightly packages to deploy it in your infrastructure.

The new release of the Resource API provides the following enhancements:

The new release also contains the following notable bugfixes:
  • ensure values are now passed to puppet as symbols. While the Enum data type is a string, puppet expects symbols for ensure to activate its special handling for ensure. This version of the Resource API restores the symbolization behaviour on the puppet side, without disturbing providers expecting a string.
  • The Resource API no longer validates attribute values on resources that should be absent. This matches existing puppet behaviour, and is necessary to be able to delete resources without having to specify a (otherwise) valid configuration.

See the CHANGELOG for a full list of changes

We encourage all module developers to review the Resource API and use it when creating types and providers. For reference, there is an example of its usage in a branch of the apt module.

Please let us know of your experiences with the Resource API, either here, on Slack (#forge-modules), or on the github repo.

Thanks, David
--