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

Include JAVA_ARGS_CLI example into /etc/default/puppetserver for Debian based systems

    Details

    • Template:
    • Team:
      Server
    • Release Notes:
      Enhancement
    • Release Notes Summary:
      Hide
      The EZBake configs now allow you to specify JAVA_ARGS_CLI, which is used when using puppetserver subcommands to configure Java differently from what is needed for the service. Note that this was used by the CLI before, but just as an environment variable, not as an EZBake config option.
      Show
      The EZBake configs now allow you to specify JAVA_ARGS_CLI, which is used when using puppetserver subcommands to configure Java differently from what is needed for the service. Note that this was used by the CLI before, but just as an environment variable, not as an EZBake config option.
    • QA Risk Assessment:
      Needs Assessment

      Description

      Puppet Server Version: 6.0.2-1bionic

      OS Name/Version: Ubuntu 18.04

      As https://puppet.com/docs/puppetserver/6.0/known_issues.html mentions

      editing /etc/default/puppetserver JAVA_ARGS with -Djava.io.tmpdir=/some/other/temporary/directory enables puppetserver to start successfully.

       

      However the sub commands (puppetserver gem install ...) use JAVA_ARGS_CLI and there is no mention of it in the puppetserver default file and Google is not cooperating thus taking a long time to troubleshoot.

       

      Desired Behavior:

      /etc/default/puppetserver to have an example for JAVA_ARGS_CLI

      Actual Behavior:

      In 18.04 if there is a security requirement to have noexec for /tmp mount

      puppetserver gem install 'ANY_GEM' fails with the following stack trace

      puppetserver gem install vault --no-ri --no-rdoc
      io/console on JRuby shells out to stty for most operations
      NotImplementedError: flock unsupported or native support failed to load; see http://wiki.jruby.org/Native-Libraries
      flock at org/jruby/RubyFile.java:314
      block in read_binary at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems.rb:851
      open at org/jruby/RubyIO.java:1171
      open at org/jruby/RubyKernel.java:307
      read_binary at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems.rb:850
      fetch_spec at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/source.rb:146
      spec at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/resolver/api_specification.rb:77
      add_always_install at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/resolver/installer_set.rb:78
      resolve_dependencies at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/dependency_installer.rb:474
      install_gem at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:194
      block in install_gems at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:255
      each at org/jruby/RubyArray.java:1735
      install_gems at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:251
      execute at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:158
      invoke_with_build_args at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command.rb:310
      process_args at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command_manager.rb:169
      run at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command_manager.rb:139
      run at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/gem_runner.rb:55
      <main> at /opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/bin/jgem:21
      load at org/jruby/RubyKernel.java:974
      <main> at /opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/bin/gem:1
      load at org/jruby/RubyKernel.java:974
      <main> at -e:1

       

        Attachments

          Activity

            jsd-sla-details-panel

              People

              • Assignee:
                justin Justin Stoller
                Reporter:
                radudb Radu Pantiru
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: