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

ruby-load-path does not recursively scan system ruby gem path

    Details

    • Template:

      Description

      On OpenSUSE/SLES systems Hiera is packaged from a gem, package name rubygem-hiera, and installed under %{_libdir}/ruby/gems/%

      {rb_ver}/ instead of %{_libdir}/ruby/vendor_ruby/%{rb_ver}

      . The ruby-load-path values are typically /usr/lib64/ruby/vendor_ruby/2.0.0 and or /usr/lib64/ruby/site_ruby/2.0.0, so the hiera terminus fails load resulting in a client side error of "Puppet::Parser::AST::Resource failed with error RuntimeError: Hiera terminus not supported without hiera library". In order for puppetserver to find the hiera terminus you need to specify the full path to the hiera/lib directory, which in this case is /usr/lib64/ruby/gems/2.0.0/gems/hiera-1.2.1/lib, in os-settings.conf. Ideally only specifying the top level gem directory, %{_libdir}/ruby/gems/%

      {rb_ver}

      /, and having it recursively searched would ensure the library isn't missed due to package updated which would change said path.

      Perhaps implemented a gems-load-path or something similar in addition to the ruby-load-path for systems packages might be a solution.

        Attachments

          Activity

            jsd-sla-details-panel

              People

              • Assignee:
                matthaus Past Haus
                Reporter:
                darin Darin Perusich
                QA Contact:
                Erik Dasher
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: