Uploaded image for project: 'Puppet Enterprise'
  1. Puppet Enterprise
  2. ENTERPRISE-1461

PE 2021.5.0 ships outdated rugged gem that doesn't work properly with Ruby 2.7

    XMLWordPrintable

Details

    • Bug
    • Status: Open
    • Normal
    • Resolution: Unresolved
    • None
    • None
    • None
    • None
    • Needs Assessment
    • Needs Assessment

    Description

      Hi,
      for a PE customer I spun up a fresh 2021.5.0 installation on RHEL 8. code manager is enabled and r10k uses the default rugged provider. During each deploy I see the following in the puppetserver.log:

      2022-04-27T14:36:33.948+02:00 INFO  [deploy-pool-1] [p.c.core] Successfully staged environment 'production': /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/commit.rb:33: warning: Using the last argument as keyword parameters is deprecated
      /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/gems/rugged-0.27.7/lib/rugged/repository.rb:258: warning: Using the last argument as keyword parameters is deprecated
      

      The used rugged gem is provided by the pe-r10k package:

      # dnf whatprovides /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/specifications/rugged-0.27.7.gemspec
      Updating Subscription Management repositories.
      Last metadata expiration check: 0:12:46 ago on Wed 27 Apr 2022 02:57:53 PM CEST.
      pe-r10k-2021.5.3.14.0-1.el8.x86_64 : R10k for Puppet Enterprise
      Repo        : @System
      Matched from:
      Filename    : /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/specifications/rugged-0.27.7.gemspec
       
      pe-r10k-2021.5.3.14.0-1.el8.x86_64 : R10k for Puppet Enterprise
      Repo        : puppet_enterprise
      Matched from:
      Filename    : /opt/puppetlabs/puppet/lib/ruby/gems/2.7.0/specifications/rugged-0.27.7.gemspec
      

      That version of rugged was never tested on Ruby 2.7 if I read https://github.com/libgit2/rugged/blob/cb6446136347d95e57756b932979517620f13a62/.travis.yml correctly.

      funny sidenote: r10k runs tests on rugged, but uses the latest release: https://github.com/puppetlabs/r10k/blob/main/Gemfile#L5

      • Is there a reason for this old version?
      • Could you update it?

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              bastelfreak Tim Meusel
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Zendesk Support