Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1743699

Summary: [upgrade] [blocker] Marketplace operator fails during 4.1 to 4.2 upgrade
Product: OpenShift Container Platform Reporter: Clayton Coleman <ccoleman>
Component: OLMAssignee: Alexander Greene <agreene>
OLM sub component: OperatorHub QA Contact: Fan Jia <jfan>
Status: CLOSED CURRENTRELEASE Docs Contact:
Severity: urgent    
Priority: unspecified CC: agreene, eparis, sdodson, travi
Version: 4.2.0   
Target Milestone: ---   
Target Release: 4.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-21 14:11:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Clayton Coleman 2019-08-20 13:48:07 UTC
Aug 20 05:44:33.254: INFO: cluster upgrade is Failing: Could not update deployment "openshift-marketplace/marketplace-operator" (332 of 411)
Aug 20 05:44:43.254: INFO: cluster upgrade is Progressing: Unable to apply 4.2.0-0.ci-2019-08-20-011541: the update could not be applied
Aug 20 05:44:43.254: INFO: cluster upgrade is Failing: Could not update deployment "openshift-marketplace/marketplace-operator" (332 of 411)
Aug 20 05:44:53.253: INFO: cluster upgrade is Progressing: Working towards registry.svc.ci.openshift.org/ocp/release:4.2.0-0.ci-2019-08-20-011541: downloading update
Aug 20 05:45:03.253: INFO: cluster upgrade is Progressing: Working towards registry.svc.ci.openshift.org/ocp/release:4.2.0-0.ci-2019-08-20-011541: downloading update


https://prow.svc.ci.openshift.org/view/gcs/origin-ci-test/logs/release-openshift-origin-installer-e2e-aws-upgrade-4.1-to-4.2/287

The update never completes.  Please investigate, all 4.1 to 4.2 upgrade failures are release blocking.

Comment 1 Alexander Greene 2019-08-21 09:31:15 UTC
The failures are happening because the marketplace-trusted-ca ConfigMap is not being injected with the expected `ca-bundle.crt`[0] and therefore is not deploying:

{
    "apiVersion": "v1",
    "kind": "ConfigMap",
    "metadata": {
        "creationTimestamp": "2019-08-20T04:47:13Z",
        "labels": {
            "config.openshift.io/inject-trusted-cabundle": "true"
        },
        "name": "marketplace-trusted-ca",
        "namespace": "openshift-marketplace",
        "resourceVersion": "30225",
        "selfLink": "/api/v1/namespaces/openshift-marketplace/configmaps/marketplace-trusted-ca",
        "uid": "93c39e5a-c305-11e9-9f14-0e61d293ddbc"
    }
}

The cluster-network-operator is expected to inject the CA-Bundle into this `ConfigMap` with [1], I am currently investigating why it is not.

[0] https://storage.googleapis.com/origin-ci-test/logs/release-openshift-origin-installer-e2e-aws-upgrade-4.1-to-4.2/287/artifacts/e2e-aws-upgrade/configmaps.json
[1] https://github.com/openshift/cluster-network-operator/pull/274/files

Comment 2 Clayton Coleman 2019-08-21 09:57:32 UTC
It's because cluster network operator is upgraded at position 70, and you are upgraded before that at position 50.

Network operator is updated after core control plane components.  Moving it before is probably not desirable. You should consider tolerate the absence of the config map in specific scenarios (you can set required=false on the volume mount as long as you check whether the bundle is updated on disk in your process).

Comment 3 Clayton Coleman 2019-08-21 09:58:22 UTC
What's more concerning to me is why it only fails sometimes.

Comment 4 Clayton Coleman 2019-08-21 10:43:55 UTC
Actually, it's failing 100% of the time.  I just happened to catch the first failure.  Bumping severity.

Comment 5 Eric Paris 2019-08-21 11:44:14 UTC
I believe this or should be reverted asap, since it blocks all 4.1 to 4.2 upgrades.

I would suggest that the operator only insist on this if proxy is enabled. And since no 4.1 cluster could enable it, we'd know it was only enabled on a 4.2 cluster where network operator was running and this wouldn't be blocked

Comment 6 Alexander Greene 2019-08-21 12:05:53 UTC
We have created a PR [0] to revert the changes that introduced the bug while we address the underlying issue.

[0] https://github.com/operator-framework/operator-marketplace/pull/244

Comment 7 Eric Paris 2019-08-21 14:11:59 UTC
Alexander reverted the problematic pull very quickly. Thank you! I am closing this bug.