-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
False
-
None
-
False
-
-
-
Rejected
NOTE: Tagged this with component Operator SDK as this is for the OLM-provided OpenShift Pipelines Operator. Please feel free to relabel this with the appropriate tags for the Pipelines Operator.
Description of problem:
After installing OpenShift Pipelines Operator, the `openshift-pipelines` Namespace is deployed by the default TektonConfig object. If this Namespace is accidentally deleted, the OPO does not attempt to re-create this and continues to fail. Even if the OPO is reinstalled, the issues continues to fail. The TektonConfig object must be removed and re-added.
Version-Release number of selected component (if applicable):
Openshift Pipelines Operator 1.15.1 OpenShift Version: 4.16.2
How reproducible:
Everytime
Steps to Reproduce:
1. Install a fresh OpenShift Cluster 2. Install the OpenShift Pipelines Operator 3. Wait for the OPO to provision the `openshift-pipelines` Namespace 4. Delete the `openshift-pipelines` Namespace
Actual results:
The OPO appears to fall into an unknown state and throws warnings similar to the following: ~~~ {"level":"info","timestamp":"2024-08-02T00:20:45.178Z","logger":"tekton-operator-lifecycle","caller":"tektonchain/tektonchain.go:111","msg":"Reconciling TektonChain","commit":"796f661","knative.dev/pod":"openshift-pipelines-operator-5567689769-5gz6q","knative.dev/controller":"github.com.tektoncd.operator.pkg.reconciler.kubernetes.tektonchain.Reconciler","knative.dev/kind":"operator.tekton.dev.TektonChain","knative.dev/traceid":"31b45aff-9a94-401e-ac2b-1c13ba9fb397","knative.dev/key":"chain","status":{"observedGeneration":1,"conditions":[{"type":"DependenciesInstalled","status":"True","lastTransitionTime":"2024-08-02T00:11:13Z"},{"type":"InstallerSetAvailable","status":"True","lastTransitionTime":"2024-08-02T00:11:14Z"},{"type":"InstallerSetReady","status":"False","lastTransitionTime":"2024-08-02T00:12:07Z","reason":"Error","message":"Installer set not ready: Install failed with message: namespaces \"openshift-pipelines\" not found"},{"type":"PostReconciler","status":"True","lastTransitionTime":"2024-08-02T00:11:15Z"},{"type":"PreReconciler","status":"True","lastTransitionTime":"2024-08-02T00:11:13Z"},{"type":"Ready","status":"False","lastTransitionTime":"2024-08-02T00:12:07Z","reason":"Error","message":"Installer set not ready: Install failed with message: namespaces \"openshift-pipelines\" not found"}],"version":"v0.20.1","tektonInstallerSet":"chain-config-pbf6s"}} {"level":"info","timestamp":"2024-08-02T00:20:55.319Z","logger":"tekton-operator-lifecycle","caller":"tektonchain/tektonchain.go:111","msg":"Reconciling TektonChain","commit":"796f661","knative.dev/pod":"openshift-pipelines-operator-5567689769-5gz6q","knative.dev/controller":"github.com.tektoncd.operator.pkg.reconciler.kubernetes.tektonchain.Reconciler","knative.dev/kind":"operator.tekton.dev.TektonChain","knative.dev/traceid":"fdd3b048-5710-4274-992d-fe0a08aefef6","knative.dev/key":"chain","status":{"observedGeneration":1,"conditions":[{"type":"DependenciesInstalled","status":"True","lastTransitionTime":"2024-08-02T00:11:13Z"},{"type":"InstallerSetAvailable","status":"True","lastTransitionTime":"2024-08-02T00:11:14Z"},{"type":"InstallerSetReady","status":"False","lastTransitionTime":"2024-08-02T00:12:07Z","reason":"Error","message":"Installer set not ready: Install failed with message: namespaces \"openshift-pipelines\" not found"},{"type":"PostReconciler","status":"True","lastTransitionTime":"2024-08-02T00:11:15Z"},{"type":"PreReconciler","status":"True","lastTransitionTime":"2024-08-02T00:11:13Z"},{"type":"Ready","status":"False","lastTransitionTime":"2024-08-02T00:12:07Z","reason":"Error","message":"Installer set not ready: Install failed with message: namespaces \"openshift-pipelines\" not found"}],"version":"v0.20.1","tektonInstallerSet":"chain-config-pbf6s"}} ~~~
Expected results:
- The Pipelines Operator can recover its managed objects
Additional info:
The Pipelines Operator deploys a number of Mutating/Validating Webhookconfigs which appear to block it from recovering