Forge Home


subscription_manager provider for Puppet


8,332 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.3.0 (latest)
  • 0.2.0
released Nov 26th 2016
This version is compatible with:
  • , , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'cristifalcas-subscription_manager', '0.3.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add cristifalcas-subscription_manager
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install cristifalcas-subscription_manager --version 0.3.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



cristifalcas/subscription_manager — version 0.3.0 Nov 26th 2016


Build Status

This module is a fork from It adds package management and config file management.


Read Licence file for more information.



  • Gaël Chamoulaud (gchamoul at redhat dot com)
  • James Laska (jlaska at redhat dot com)
  • Cristian Falcas (cristi.falcas at gmail dot com)


include ::subscription_manager


  • $version: subscription-manager package version, it's passed to ensure parameter of package resource can be set to specific version number, 'latest', 'present' etc.
  • install_firstboot: boolean; controls whether firstboot is installed or not. Defaults to false
  • install_gui: boolean; controls whether gui is installed or not. Defaults to false
  • hostname: Server hostname
  • port: Server port
  • baseurl: Content base URL
  • manage_repos: Manage generation of yum repositories for subscribed content
  • insecure: Set to 1 to disable certificate validation
  • full_refresh_on_yum: Refresh repo files with server overrides on every yum command
  • report_package_profile: If set to zero, the client will not report the package profile to the subscription management service.

Types and Providers

The module adds the following new types:

  • rhsm_register for managing Red Hat Subscriptions
  • rhsm_repo for managing Red Hat Repository Subscriptions

rhsm_register Parameters

  • activationkeys: The activation key to use when registering the system (cannot be used with username and password)
  • ensure: Valid values are present, absent. Default value is present.
  • force: Should the registration be forced. Use this option with caution, setting it true will cause the system to be unregistered before running 'subscription-manager register'. Default value false.
  • hardware: Whether or not the hardware information should be probed. Default value is true.
  • password: The password to use when registering the system
  • server_hostname: Specify a url to use as a server
  • username: The username to use when registering the system
  • pool: A specific license pool to attach the system to

rhsm_register Examples

Register clients to Red Hat Subscription Management using an activation key:

Register clients to Red Hat Subscription management using a username and password:

Register clients to Red Hat Subscription management and attach to a specific license pool:

rhsm_repo Parameters

  • ensure: Valid values are present, absent. Default value is present.
  • name: The name of the repo registration to add

rhsm_repo Examples

Add a repo:

Remove a repo:


In your puppet modules directory:

git clone

Ensure the module is present in your puppetmaster's own environment (it doesn't have to use it) and that the master has pluginsync enabled. Run the agent on the puppetmaster to cause the custom types to be synced to its local libdir (puppet master --configprint libdir) and then restart the puppetmaster so it loads them.


Please file any issues or suggestions on on GitHub