Uploaded image for project: 'Operator Runtime'
  1. Operator Runtime
  2. OPRUN-2832

[upstream] Build Deppy library for simple resolution

XMLWordPrintable

    • Build Deppy Library
    • Strategic Product Work
    • 17
    • False
    • None
    • False
    • Not Selected
    • To Do
    • OCPSTRAT-443 - [Phase 1 MVP/Tech Preview] OLM 1.0 - Extension Installation (F7)
    • OCPSTRAT-443[Phase 1 MVP/Tech Preview] OLM 1.0 - Extension Installation (F7)
    • 0% To Do, 0% In Progress, 100% Done

      Epic Goal

      • Enable Deppy to be imported as a library

      Why is this important?

      • Deppy is being developed as a framework, which will allow other projects to import Deppy as a library that can be used to identify if a set of entities can satisfy a set of constraints. The Operator Controller will then rely on the Deppy library to decide which operator must be installed on cluster based on:
        • user constraints
        • cluster constraints
        • dependency constraints
        • constraints introduced by operators currently installed
      • The initial delivery tracked in this epic will only focus on supporting the following constraints:
        • PackageName Constraints: Allowing users to specify that an entity must be from a particular package
        • GVK Uniqueness Constraints: Allowing users to specify that GVKs introduced to the cluster must be provided by a single entity.
      • Multiple operator CRs can introduce multiple PackageName constraints.

      Scenarios

      1. A third part project is able to import and use the Deppy library to check if a set of constraints can be satisfied by existing entities.

      Out of Scope

      • Supporting Bundle Level Constraints (Dependencies)
      • Supporting Cluster Constraints (cluster version)
      • Supporting Upgrades

      Acceptance Criteria

      • CI - MUST be running successfully with tests automated.
      • Deppy is able to support PackageName Constraints
      • Deppy is able to support GVK Constraints.
      • Deppy can be used to resolve supported constraints against a set of entities.
      • Deppy can export packages that satisfy a set of constraints.

      Dependencies (internal and external)

      1. N/A

      Previous Work (Optional):

      1. Historical Deppy work can be found in the Deppy repository.

      Upstream Issue:

      Open questions:

      1. Will Operator CRs be reconciled in parallel or serially.

      Done Checklist

      • CI - CI is running, tests are automated and merged.
      • DEV - Upstream code and tests merged: <link to meaningful PR or GitHub Issue>
      • DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>

       

       

              agreene1991 Alexander Greene (Inactive)
              rh-ee-cchantse Catherine Chan-Tse
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: