Uploaded image for project: 'OpenShift BuildConfig'
  1. OpenShift BuildConfig
  2. OCPBUILD-155

Refactor openshift-controller-manager-operator to use library-go controllers

XMLWordPrintable

    • 5

      User Story

      As an OpenShift contributor
      I want the openshift-controller-manager-operator to use library-go controller factories
      So that other OpenShift engineers can easily understand how it works
      and contribute to its maintenance

      Acceptance Criteria

      • To the furthest extent possible, the operator uses controller factory code from library-go.
      • After refactor, the operator successfully deploys the openshift-controller-manager in new installs and upgrades.
      • Verify that transitions from Managed -> Unmanaged -> Managed work. This should be run as an e2e test. See OCPBUGSM-1192.

      Launch Checklist

      Dependencies identified
      Blockers noted and expected delivery timelines set
      Design is implementable
      Acceptance criteria agreed upon
      Story estimated

      Notes

      Only standard regression testing is necessary for this refactor. New capabilities should not be directly introduced.

      openshift-apiserver-operator went through a similar refactoring. Is it now allowed to have the Removed management state? If so, then we should also allow Removed as a management state.

      OCPBUGSM-1192 should be addressed by this refactor. Check that OCPBUGSM-948 is also addressed by this refactor. It may not be, but it's possible (bug due to conflicts reconciling the daemonset).


      Guiding Questions

      User Story

      • Is this intended for an administrator, application developer, or other type of OpenShift user?
      • What experience level is this intended for? New, experienced, etc.?
      • Why is this story important? What problems does this solve? What benefit(s) will the customer experience?
      • Is this part of a larger epic or initiative? If so, ensure that the story is linked to the appropriate epic and/or initiative.

      Acceptance Criteria

      • How should a customer use and/or configure the feature?
      • Are there any prerequisites for using/enabling the feature?

      Notes

      • Is this a new feature, or an enhancement of an existing feature? If the latter, list the feature and docs reference.
      • Are there any new terms, abbreviations, or commands introduced with this story? Ex: a new command line argument, a new custom resource.
      • Are there any recommended best practices when using this feature?
      • On feature completion, are there any known issues that customers should be aware of?

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

              Created:
              Updated:
              Resolved: