Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-10604

Include the puppetserver_gem package provider with core Puppet



    • Night's Watch
    • 3
    • NW - 2020-09-01, NW - 2020-09-16
    • Reviewed
    • 39595,40456
    • 2
    • Enhancement
    • Move the puppetserver_gem provider in core puppet. Previously, the provider was part of the puppetlabs-puppetserver_gem module which will no longer receive updates.
    • Needs Assessment


      The core puppet types and providers include a puppet_gem provider for the package resource that knows how to interact with the Ruby interpreter bundled with the puppet-agent package.

      The puppetserver service also bundles its own JRuby interpreter and requires the used of the puppetserver gem command to install packages. There is an unsupported module, puppetlabs/puppetserver_gem, that adds a puppetserver_gem provider for package resources that fills an analogous role.

      However, having this provider de-coupled from the Puppet core means it can be broken by changes in the core in a way that interferes with upgrades. PUP-6488 was one such instance where the parent Gem provider was altered in a way that was incompatible with puppet_gem and puppetserver_gem. Both providers were patched, but the breakage in puppet_gem was automatically resolved by an upgrade while the breakage in puppetserver_gem requires users to discover, understand, and then upgrade the module.

      To prevent these sorts of issues, puppetserver_gem provider should be bundled along with puppet_gem by puppet-agent.


        Issue Links



              gabriel.nagy Gabriel Nagy
              chuck Charlie Sharpsteen
              0 Vote for this issue
              5 Start watching this issue



                Zendesk Support