Description of problem: Dynamic Resources (I.E. The PrometheusRule and ServiceMonitor resources) stored in the bundle have the installPlan as their Owner.The owner should be the CSV. This bug was introduced at [1] in the code. Version-Release number of selected component (if applicable): 4.4 and beyond How reproducible: Always Steps to Reproduce: 1. Install an operator whose bundle includes a Prometheus Resource 2. Delete the CSV Actual results: The Prometheus resource still exists. Expected results: The Prometheus resource should no longer exist. Additional info: [1] https://github.com/operator-framework/operator-lifecycle-manager/blob/master/pkg/controller/operators/catalog/operator.go#L1725
OwnerReferences were added to PrometheusRule and ServiceMonitor objects as expected. Marking as VERIFIED. Cluster Version: 4.5.0-0.nightly-2020-03-06-190457 Steps used to reproduce: 1. Install an operator whose bundle includes a Prometheus Resource oc get csv -n test-operators NAME DISPLAY VERSION REPLACES PHASE etcdoperator.v0.9.4 etcd 0.9.4 Succeeded prometheusoperator.0.32.0 Prometheus Operator 0.32.0 Succeeded 2. Check OwnerReferences for ServiceMonitor and PrometheusRule objects: oc get ServiceMonitor my-servicemonitor -o yaml -n test-operators apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: creationTimestamp: "2020-03-09T04:03:41Z" generation: 1 labels: app: olm-operator name: my-servicemonitor namespace: test-operators ownerReferences: - apiVersion: operators.coreos.com/v1alpha1 blockOwnerDeletion: false controller: false kind: ClusterServiceVersion name: etcdoperator.v0.9.4 uid: 2fcbb9c5-d4ce-4fb1-b212-6a3f4c49e26b resourceVersion: "33125" selfLink: /apis/monitoring.coreos.com/v1/namespaces/test-operators/servicemonitors/my-servicemonitor uid: a771eb68-afbe-46f9-8043-a3039ed377b5 oc get PrometheusRule my-prometheusrule -n test-operators -o yaml apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: creationTimestamp: "2020-03-09T04:03:41Z" generation: 1 labels: prometheus: alert-rules role: alert-rules name: my-prometheusrule namespace: test-operators ownerReferences: - apiVersion: operators.coreos.com/v1alpha1 blockOwnerDeletion: false controller: false kind: ClusterServiceVersion name: etcdoperator.v0.9.4 uid: 2fcbb9c5-d4ce-4fb1-b212-6a3f4c49e26b resourceVersion: "33124" selfLink: /apis/monitoring.coreos.com/v1/namespaces/test-operators/prometheusrules/my-prometheusrule uid: a3c09f94-d1f7-42ad-9be9-ecab0365a053 3. Delete csv and check if PrometheusRule and ServiceMonitor objects are deleted. clusterserviceversion.operators.coreos.com "etcdoperator.v0.9.4" deleted oc get ServiceMonitor,PrometheusRule -n test-operators No resources found in test-operators namespace
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:2409