Uploaded image for project: 'Puppet Server'
  1. Puppet Server
  2. SERVER-3050

Compile API errors out if a fact terminus other than PuppetDB is used

    XMLWordPrintable

Details

    • Needs Priority
    • 44982
    • 1
    • Enhancement
    • The v4 catalog endpoing (used by Impact Analysis) now supports retrieving facts from any facts terminus, if none are provided with the request.
    • Needs Assessment

    Description

      PE 2019.8.7 & CD4PE 4.6.1

      Puppet Version: 6.23.0
      Puppet Server Version: 6.16.0
      OS Name/Version: RHEL 7

      This issue has been raised from a customer support ticket where both CD4PE and the satellite PE tools are both in use in conjunction with Puppet Enterprise.

      In the set-up for the satellite tools modules, the fact terminus is set to satellite and this ensures facts will be sent to both satellite and puppetdb.

      However, when the customer tries to run Impact Analysis from CD4PE, they are met with the following error:

      "Internal Server Error: org.jruby.exceptions.RuntimeError: (Error) PuppetDB not configured, please provide facts with your catalog request."
      

      This looks like the puppet/v4/catalog API is hard-wired such that it can only retrieve facts from the PuppetDB terminus:
      https://github.com/puppetlabs/puppetserver/blob/6.16.0/src/ruby/puppetserver-lib/puppet/server/compiler.rb#L177-L182

      Desired Behavior: Allow fact retrieval from the puppet/v4/catalog API when terminus is not set to puppetdb

      Actual Behavior: WHen fact terminus is set to satellite, the puppet/v4/catalog API is hard coded to error out.


      Outcomes

      Attachments

        Activity

          People

            maggie Maggie Dreyer
            patrick.grant Patrick Grant
            Votes:
            1 Vote for this issue
            Watchers:
            11 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Zendesk Support