Uploaded image for project: 'OpenShift Builds'
  1. OpenShift Builds
  2. BUILD-720

Include Shipwright Operator as library

XMLWordPrintable

    • 5
    • False
    • None
    • False
    • SECFLOWOTL-27 - Shared Resource CSI Driver GA
    • Builds Sprint #6, Builds Sprint #5, Builds Sprint #7, Builds Sprint #8

      Story (Required)

      As a cluster admin trying to install OpenShift Builds I want the OpenShift Builds operator to install Shipwright Builds when I enable it with the OpenShift Builds operator API.

      <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>

      The new OpenShift Builds operator will expose a new API for managing Shipwright components. Rather than re-writing the upstream Shipwright operator, we should include/import the Shipwright Operator controller code and CRDs as a library.

      Out of scope

      <Defines what is not included in this story>

      • Deploy the Shared Resource CSI driver via the operator
      • Updating our productization infrastructure to use the new operator repository
      • Supporting upgrade paths for the OpenShift Builds operator

      Approach (Required)

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

      • Import the upstream Shipwright Build Reconciler
      • Import the Shipwright Build CRDs from upstream
      • Add the following behavior to the builds operator:
        • On start, it creates the ShipwrightBuild CRD instance with name "cluster". This should have an owner reference to the OpenShiftBuild object.
        • Other ShipwrightBuild objects with name other than "cluster" are ignored.
        • Target namespace for "ShipwrightBuild" object should be "openshift-builds". This should match the default namespace we recommend in the OLM bundle.

      Dependencies

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

      • BUILD-719 - bootstrap the new operator code repo

      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>

      • OpenShift Builds is able to deploy Shipwright Builds through its API.
      • Shipwright operator CRDs are deployed and managed via the OpenShift Builds operator.
      • CI verifies that Shipwright Builds is being deployed properly.

      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

              rh-ee-sabiswas Sayan Biswas
              adkaplan@redhat.com Adam Kaplan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: