Uploaded image for project: 'OpenShift Jenkins'
  1. OpenShift Jenkins
  2. JKNS-539

Onboard Jenkins binary inputs to Konflux

XMLWordPrintable

    • 3
    • False
    • None
    • False
    • KONFLUX-2276 - Jenkins for OpenShift Konflux Enablement
    • Release Note Not Required
    • Builds Sprint #15, Builds Sprint #16

      Story (Required)

      As a Red Hat developer trying to release Jenkins for OpenShift I want to build the Jenkins WAR file from source so that we no longer rely on upstream binaries.

      <Describes high level purpose and goal for this story. Answers the questions: Who is impacted, what is it and why do we need it? How does it improve the customer’s experience?>

      Background (Required)

      <Describes the context or background related to this story>

      We previously built a hacky, hard to maintain process in CPaaS for shoving the upstream Jenkins .war into an RPM so we can track provenance. We have a better solution with Konflux today - all we need to do is onboard and build the .war file and any other binary inputs to the Jenkins controller image.

      Out of scope

      <Defines what is not included in this story>

      • Hermetic build for Jenkins
      • Build of plugins
      • CI testing
      • Binary inputs for the Jenkins agent base image.

      Approach (Required)

      <Description of the general technical path on how to achieve the goal of the story. Include details like json schema, class definitions>

      1. Fork upstream jenkinsci/jenkins to Red Hat-branded repo (redhat-openshift-jenkins)
      2. Build container image containing the jenkins.war. Options:
        1. "Slim" runtime image (using openjdk-21) to facilitate testing.
        2. Scratch container image/OCI artifact.
      3. Iterate to get EC contract tests passing.

      Dependencies

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

      • Snyk token for Jenkins: SAST-156

      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>

      • Jenkins .war file is assembled on Konflux using Red Hat container images
      • jenkins.war can be extracted from a container image in another build.

      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

              adkaplan@redhat.com Adam Kaplan
              adkaplan@redhat.com Adam Kaplan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: