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

Enhance ezbake to support extra uberjars for JRuby 1.7 vs 9k

    Details

    • Type: Task
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: SERVER 5.0.0
    • Component/s: None
    • Labels:
      None
    • Release Notes:
      New Feature
    • Release Notes Summary:
      Hide
      * Added ezbake option to specify additional uberjars which should be built and installed along-side the main project
      * Allows puppetserver to include 2 jars for jruby 1.7 and jruby 9k dependencies
      Show
      * Added ezbake option to specify additional uberjars which should be built and installed along-side the main project * Allows puppetserver to include 2 jars for jruby 1.7 and jruby 9k dependencies
    • QA Risk Assessment:
      Needs Assessment

      Description

      In looking into the work to support the configuration of JRuby 1.7 vs. 9k uberjars for SERVER-1630, we realized that we're going to need some changes made to ezbake. The ezbake work will likely consist of:

      1) Provide an optional mechanism in a project's ezbake profile config to specify:

      • A set of Maven coordinates (or maybe GitHub repo + treeish) for a set of "additional jar dependencies" to retrieve.
      • A default set of files to add to the Java classpath for the start, foreground, ruby, irb, and gem scripts.

      2) Provide a way for users to configure a new environment variable in the sysconfig/default script which, when set, is appended to the Java classpath in place of any default configured in the project ezbake configuration.

      3) For any "additional jar dependencies" set in the ezbake configuration, modify ezbake to:

      • Retrieve project source or Maven artifact (immediate jar + pom.xml/project.clj dependencies).
      • Build an uberjar (immediate jar + any upstream dependencies) of each retrieved project.
      • Package up each additional uberjar alongside the main project's uberjar.

      4) Modify the ezbake.manifest to include information for any additional uberjars which might be built into the package.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                joe.pinsonault Joe Pinsonault
                Reporter:
                jeremy.barlow Jeremy Barlow
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Zendesk Support