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

Encapsulate TaskRuns in an Interface

XMLWordPrintable

    • 3
    • Builds Sprint #32, Builds Sprint #33
    • 2

      Story (Required)

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

      As a Shipwright contributor trying to refactor the BuildRun controller I want to encapsulate the logic used to create and manage TaskRuns so that we can later use other Kubernetes objects to execute the build.

      Background (Required)

      <Describes the context or background related to this story>

      The Shipwright BuildRun controller is tightly coupled to Tekton TaskRuns in its implementation. The logic for representing a TaskRun needs to be encapsulated into an interface so that we can use other Kubernetes objects to manage builds, such as Tekton PipelineRuns (and perhaps other things like Argo Workflows).

      Out of scope

      <Defines what is not included in this story>

      • Use PipelineRuns to execute the BuildRun

      Approach (Required)

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

      Dependencies

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

      None

      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>

      • References to Tekton TaskRun in the BuildRun controller are minimal, and are replaced with an interface abstraction.
      • Existing CI testing upstream passes.

      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:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: