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

Update CA autosign code to use ExecutionStubImpl/executeCommand

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: SERVER 2.3.0
    • Component/s: None
    • Labels:
    • Template:
    • Sub-team:
    • Story Points:
      1
    • Sprint:
      Server Emerald 2016-01-27, Server Emerald 2016-02-10
    • Release Notes:
      Known Issue
    • Release Notes Summary:
      Hide
      There was a behavior change in JDK8 that can cause execution of external shell commands to fail in rare edge cases:

      * If you pass data on STDIN
      * And the external shell program does not consume it

      A workaround is to write a wrapper script that consumes STDIN, until there is a fix in the upstream shell execution library.

      However we have no known use cases where a user would trigger this kind of behavior. It is technically possible in a pathological configuration of PE autosign, but extremely unlikely.
      Show
      There was a behavior change in JDK8 that can cause execution of external shell commands to fail in rare edge cases: * If you pass data on STDIN * And the external shell program does not consume it A workaround is to write a wrapper script that consumes STDIN, until there is a fix in the upstream shell execution library. However we have no known use cases where a user would trigger this kind of behavior. It is technically possible in a pathological configuration of PE autosign, but extremely unlikely.

      Description

      There are currently two execution libraries in use in puppet-server. The first is ExecutionStubImpl, which is used in the jruby code to execute commands. The second is clojure.java.shell/sh, which is in use in the certificate authority autosign command function. The ExecutionStubImpl is more robust than clojure.java.shell and will be getting used in more places, so consolidating the existing code to also use that library would be advantageous.

      This will necessitate adding support to pass in an environment for the ExecutionStubImpl library, as the autosign command messes with RUBYLIB and PATH.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                Created:
                Updated:
                Resolved:

                  Zendesk Support