Uploaded image for project: 'OpenShift Pipelines'
  1. OpenShift Pipelines
  2. SRVKP-10806

Add JAVA_VERSION parameter to Maven Task for Java version selection

XMLWordPrintable

    • False
    • Hide

      None

      Show
      None
    • False

      Story (Required)

      With Pipelines 1.17, ClusterTasks have been removed and users are expected to migrate to the new Tasks delivered via resolvers. In 1.16, customers using the Maven ClusterTask could control the Java version via the MAVEN_IMAGE parameter. However, the Maven Task available via resolvers has the Java version hard-coded in the task image (openjdk-17), with no parameter available to override it.This is a regression that breaks existing customer workflows that relied on running different Java versions (e.g. Java 8, 11) for their Maven builds.

      This is a regression that breaks existing customer workflows that relied on running different Java versions (e.g. Java 8, 11) for their Maven builds.

      Background (Required)

      S2I Tasks already allow selection of different Java versions via parameters, and customers expect the Maven Task to offer similar flexibility.

      Out of scope

      <Defines what is not included in this story>

      Approach (Required)

      Add a JAVA_VERSION string parameter to the Maven Task with the following behavior:

      • Supported values: 8, 11, 17 (default), 21
      • The parameter controls which OpenJDK base image is used for the maven-goals step
      • Image is constructed dynamically: registry.access.redhat.com/ubi8/openjdk-$(params.JAVA_VERSION):latest
      • Default value of 17 matches the current hard-coded behavior in 1.17, so existing users on 1.17 see no change

      Dependencies

      <Describes what this story depends on. Dependent Stories and EPICs should be linked to the story.>

      Acceptance Criteria (Mandatory)

      <Describe edge cases to consider when implementing the story and defining tests>

      <Provides a required and minimum list of acceptance tests for this story. More is expected as the engineer implements this story>

      INVEST Checklist

      Dependencies identified

      Blockers noted and expected delivery timelines set

      Design is implementable

      Acceptance criteria agreed upon

      Story estimated

      Legend

      Unknown

      Verified

      Unsatisfied

      Done Checklist

      • Code is completed, reviewed, documented and checked in
      • Unit and integration test automation have been delivered and running cleanly in continuous integration/staging/canary environment
      • Continuous Delivery pipeline(s) is able to proceed with new code included
      • Customer facing documentation, API docs etc. are produced/updated, reviewed and published
      • Acceptance criteria are met

              Unassigned Unassigned
              rh-ee-abghosh Abhishek Ghosh
              Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: