I0505 13:00:24.370965 1 cmd.go:250] Using service-serving-cert provided certificates I0505 13:00:24.371061 1 leaderelection.go:121] The leader election gives 4 retries and allows for 30s of clock skew. The kube-apiserver downtime tolerance is 78s. Worst non-graceful lease acquisition is 2m43s. Worst graceful lease acquisition is {26s}. I0505 13:00:24.371643 1 observer_polling.go:159] Starting file observer I0505 13:00:24.405344 1 builder.go:298] console-operator version - I0505 13:00:24.729312 1 secure_serving.go:57] Forcing use of http/1.1 only W0505 13:00:24.729335 1 secure_serving.go:69] Use of insecure cipher 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256' detected. W0505 13:00:24.729340 1 secure_serving.go:69] Use of insecure cipher 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256' detected. W0505 13:00:24.729343 1 secure_serving.go:69] Use of insecure cipher 'TLS_RSA_WITH_AES_128_GCM_SHA256' detected. W0505 13:00:24.729346 1 secure_serving.go:69] Use of insecure cipher 'TLS_RSA_WITH_AES_256_GCM_SHA384' detected. W0505 13:00:24.729348 1 secure_serving.go:69] Use of insecure cipher 'TLS_RSA_WITH_AES_128_CBC_SHA' detected. W0505 13:00:24.729351 1 secure_serving.go:69] Use of insecure cipher 'TLS_RSA_WITH_AES_256_CBC_SHA' detected. I0505 13:00:24.733879 1 configmap_cafile_content.go:205] "Starting controller" name="client-ca::kube-system::extension-apiserver-authentication::client-ca-file" I0505 13:00:24.733887 1 requestheader_controller.go:172] Starting RequestHeaderAuthRequestController I0505 13:00:24.733960 1 shared_informer.go:313] Waiting for caches to sync for RequestHeaderAuthRequestController I0505 13:00:24.733947 1 shared_informer.go:313] Waiting for caches to sync for client-ca::kube-system::extension-apiserver-authentication::client-ca-file I0505 13:00:24.734050 1 configmap_cafile_content.go:205] "Starting controller" name="client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file" I0505 13:00:24.734371 1 shared_informer.go:313] Waiting for caches to sync for client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file I0505 13:00:24.734619 1 dynamic_serving_content.go:135] "Starting controller" name="serving-cert::/var/run/secrets/serving-cert/tls.crt::/var/run/secrets/serving-cert/tls.key" I0505 13:00:24.736536 1 secure_serving.go:213] Serving securely on [::]:8443 I0505 13:00:24.736665 1 tlsconfig.go:243] "Starting DynamicServingCertificateController" I0505 13:00:24.736699 1 leaderelection.go:254] attempting to acquire leader lease openshift-console-operator/console-operator-lock... I0505 13:00:24.745623 1 leaderelection.go:268] successfully acquired lease openshift-console-operator/console-operator-lock I0505 13:00:24.745696 1 event.go:377] Event(v1.ObjectReference{Kind:"Lease", Namespace:"openshift-console-operator", Name:"console-operator-lock", UID:"984d1d1d-d971-402a-bb78-aa643bcfa00a", APIVersion:"coordination.k8s.io/v1", ResourceVersion:"11882", FieldPath:""}): type: 'Normal' reason: 'LeaderElection' console-operator-7d4ddc79d6-s8nm9_65cf97df-a231-4428-a073-c874e037c933 became leader I0505 13:00:24.746465 1 simple_featuregate_reader.go:171] Starting feature-gate-detector I0505 13:00:24.750300 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'FeatureGatesInitialized' FeatureGates updated to featuregates.Features{Enabled:[]v1.FeatureGateName{"AWSEFSDriverVolumeMetrics", "AdminNetworkPolicy", "AlibabaPlatform", "AzureWorkloadIdentity", "BareMetalLoadBalancer", "BuildCSIVolumes", "ChunkSizeMiB", "CloudDualStackNodeIPs", "DisableKubeletCloudCredentialProviders", "ExternalOIDC", "GCPLabelsTags", "HardwareSpeed", "IngressControllerLBSubnetsAWS", "KMSv1", "ManagedBootImages", "ManagedBootImagesAWS", "MultiArchInstallAWS", "MultiArchInstallGCP", "NetworkDiagnosticsConfig", "NetworkLiveMigration", "NetworkSegmentation", "NodeDisruptionPolicy", "PersistentIPsForVirtualization", "PrivateHostedZoneAWS", "SetEIPForNLBIngressController", "VSphereControlPlaneMachineSet", "VSphereDriverConfiguration", "VSphereMultiVCenters", "VSphereStaticIPs", "ValidatingAdmissionPolicy"}, Disabled:[]v1.FeatureGateName{"AWSClusterHostedDNS", "AdditionalRoutingCapabilities", "AutomatedEtcdBackup", "BootcNodeManagement", "CSIDriverSharedResource", "ClusterAPIInstall", "ClusterAPIInstallIBMCloud", "ClusterMonitoringConfig", "ConsolePluginContentSecurityPolicy", "DNSNameResolver", "DynamicResourceAllocation", "EtcdBackendQuota", "EventedPLEG", "Example", "GCPClusterHostedDNS", "GatewayAPI", "ImageStreamImportMode", "IngressControllerDynamicConfigurationManager", "InsightsConfig", "InsightsConfigAPI", "InsightsOnDemandDataGather", "InsightsRuntimeExtractor", "MachineAPIMigration", "MachineAPIOperatorDisableMachineHealthCheckController", "MachineAPIProviderOpenStack", "MachineConfigNodes", "MaxUnavailableStatefulSet", "MetricsCollectionProfiles", "MinimumKubeletVersion", "MixedCPUsAllocation", "MultiArchInstallAzure", "NewOLM", "NodeSwap", "NutanixMultiSubnets", "OVNObservability", "OnClusterBuild", "OpenShiftPodSecurityAdmission", "PinnedImages", "PlatformOperators", "ProcMountType", "RouteAdvertisements", "RouteExternalCertificate", "ServiceAccountTokenNodeBinding", "SignatureStores", "SigstoreImageVerification", "TranslateStreamCloseWebsocketRequests", "UpgradeStatus", "UserNamespacesPodSecurityStandards", "UserNamespacesSupport", "VSphereMultiNetworks", "VolumeAttributesClass", "VolumeGroupSnapshot"}} I0505 13:00:24.750282 1 starter.go:211] FeatureGates initialized: knownFeatureGates=[AWSEFSDriverVolumeMetrics AdminNetworkPolicy AlibabaPlatform AzureWorkloadIdentity BareMetalLoadBalancer BuildCSIVolumes ChunkSizeMiB CloudDualStackNodeIPs DisableKubeletCloudCredentialProviders ExternalOIDC GCPLabelsTags HardwareSpeed IngressControllerLBSubnetsAWS KMSv1 ManagedBootImages ManagedBootImagesAWS MultiArchInstallAWS MultiArchInstallGCP NetworkDiagnosticsConfig NetworkLiveMigration NetworkSegmentation NodeDisruptionPolicy PersistentIPsForVirtualization PrivateHostedZoneAWS SetEIPForNLBIngressController VSphereControlPlaneMachineSet VSphereDriverConfiguration VSphereMultiVCenters VSphereStaticIPs ValidatingAdmissionPolicy AWSClusterHostedDNS AdditionalRoutingCapabilities AutomatedEtcdBackup BootcNodeManagement CSIDriverSharedResource ClusterAPIInstall ClusterAPIInstallIBMCloud ClusterMonitoringConfig ConsolePluginContentSecurityPolicy DNSNameResolver DynamicResourceAllocation EtcdBackendQuota EventedPLEG Example GCPClusterHostedDNS GatewayAPI ImageStreamImportMode IngressControllerDynamicConfigurationManager InsightsConfig InsightsConfigAPI InsightsOnDemandDataGather InsightsRuntimeExtractor MachineAPIMigration MachineAPIOperatorDisableMachineHealthCheckController MachineAPIProviderOpenStack MachineConfigNodes MaxUnavailableStatefulSet MetricsCollectionProfiles MinimumKubeletVersion MixedCPUsAllocation MultiArchInstallAzure NewOLM NodeSwap NutanixMultiSubnets OVNObservability OnClusterBuild OpenShiftPodSecurityAdmission PinnedImages PlatformOperators ProcMountType RouteAdvertisements RouteExternalCertificate ServiceAccountTokenNodeBinding SignatureStores SigstoreImageVerification TranslateStreamCloseWebsocketRequests UpgradeStatus UserNamespacesPodSecurityStandards UserNamespacesSupport VSphereMultiNetworks VolumeAttributesClass VolumeGroupSnapshot] I0505 13:00:24.760812 1 base_controller.go:68] Waiting for caches to sync for InformerWithSwitchController I0505 13:00:24.760836 1 base_controller.go:74] Caches are synced for InformerWithSwitchController I0505 13:00:24.760841 1 base_controller.go:111] Starting #1 worker of InformerWithSwitchController controller ... I0505 13:00:24.761098 1 base_controller.go:68] Waiting for caches to sync for RemoveStaleConditionsController I0505 13:00:24.761180 1 base_controller.go:68] Waiting for caches to sync for console I0505 13:00:24.761386 1 base_controller.go:68] Waiting for caches to sync for ConsoleCLIDownloadsController I0505 13:00:24.761421 1 base_controller.go:68] Waiting for caches to sync for LoggingSyncer I0505 13:00:24.762015 1 base_controller.go:68] Waiting for caches to sync for StatusSyncer_console I0505 13:00:24.762079 1 base_controller.go:68] Waiting for caches to sync for CLIOIDCClientStatusController I0505 13:00:24.762105 1 base_controller.go:68] Waiting for caches to sync for PodDisruptionBudgetController I0505 13:00:24.762135 1 base_controller.go:68] Waiting for caches to sync for PodDisruptionBudgetController I0505 13:00:24.762165 1 base_controller.go:68] Waiting for caches to sync for ConsoleRouteController I0505 13:00:24.762140 1 base_controller.go:68] Waiting for caches to sync for ClusterUpgradeNotificationController I0505 13:00:24.762247 1 base_controller.go:68] Waiting for caches to sync for ConsoleOperator I0505 13:00:24.762280 1 base_controller.go:74] Caches are synced for ClusterUpgradeNotificationController I0505 13:00:24.762341 1 base_controller.go:111] Starting #1 worker of ClusterUpgradeNotificationController controller ... I0505 13:00:24.762081 1 base_controller.go:68] Waiting for caches to sync for ConsoleDownloadsDeploymentSyncController I0505 13:00:24.762092 1 base_controller.go:68] Waiting for caches to sync for HealthCheckController I0505 13:00:24.762042 1 base_controller.go:68] Waiting for caches to sync for OIDCSetupController I0505 13:00:24.762187 1 base_controller.go:68] Waiting for caches to sync for OAuthClientsController I0505 13:00:24.762179 1 base_controller.go:68] Waiting for caches to sync for UnsupportedConfigOverridesController I0505 13:00:24.762193 1 base_controller.go:68] Waiting for caches to sync for OAuthClientSecretController I0505 13:00:24.762200 1 base_controller.go:68] Waiting for caches to sync for ConsoleServiceController I0505 13:00:24.762233 1 base_controller.go:68] Waiting for caches to sync for DownloadsRouteController I0505 13:00:24.762236 1 base_controller.go:68] Waiting for caches to sync for ManagementStateController I0505 13:00:24.762242 1 base_controller.go:68] Waiting for caches to sync for ConsoleServiceController E0505 13:00:24.762590 1 base_controller.go:271] "Unhandled Error" err="ClusterUpgradeNotificationController reconciliation failed: console.operator.openshift.io \"cluster\" not found" E0505 13:00:24.769462 1 base_controller.go:271] "Unhandled Error" err="ClusterUpgradeNotificationController reconciliation failed: console.operator.openshift.io \"cluster\" not found" E0505 13:00:24.782524 1 base_controller.go:271] "Unhandled Error" err="ClusterUpgradeNotificationController reconciliation failed: console.operator.openshift.io \"cluster\" not found" I0505 13:00:24.834579 1 shared_informer.go:320] Caches are synced for RequestHeaderAuthRequestController I0505 13:00:24.835721 1 shared_informer.go:320] Caches are synced for client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file I0505 13:00:24.835734 1 shared_informer.go:320] Caches are synced for client-ca::kube-system::extension-apiserver-authentication::client-ca-file I0505 13:00:24.861910 1 base_controller.go:74] Caches are synced for LoggingSyncer I0505 13:00:24.861926 1 base_controller.go:111] Starting #1 worker of LoggingSyncer controller ... I0505 13:00:24.861928 1 base_controller.go:74] Caches are synced for RemoveStaleConditionsController I0505 13:00:24.861939 1 base_controller.go:111] Starting #1 worker of RemoveStaleConditionsController controller ... I0505 13:00:24.861947 1 base_controller.go:74] Caches are synced for ConsoleCLIDownloadsController I0505 13:00:24.861959 1 base_controller.go:111] Starting #1 worker of ConsoleCLIDownloadsController controller ... E0505 13:00:24.862040 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" I0505 13:00:24.862102 1 base_controller.go:74] Caches are synced for StatusSyncer_console I0505 13:00:24.862112 1 base_controller.go:111] Starting #1 worker of StatusSyncer_console controller ... I0505 13:00:24.862183 1 base_controller.go:74] Caches are synced for CLIOIDCClientStatusController I0505 13:00:24.862190 1 base_controller.go:74] Caches are synced for PodDisruptionBudgetController I0505 13:00:24.862194 1 base_controller.go:111] Starting #1 worker of CLIOIDCClientStatusController controller ... I0505 13:00:24.862199 1 base_controller.go:111] Starting #1 worker of PodDisruptionBudgetController controller ... I0505 13:00:24.862203 1 base_controller.go:74] Caches are synced for PodDisruptionBudgetController I0505 13:00:24.862210 1 base_controller.go:111] Starting #1 worker of PodDisruptionBudgetController controller ... I0505 13:00:24.862274 1 base_controller.go:74] Caches are synced for ConsoleRouteController I0505 13:00:24.862291 1 base_controller.go:111] Starting #1 worker of ConsoleRouteController controller ... I0505 13:00:24.862379 1 base_controller.go:74] Caches are synced for ConsoleOperator I0505 13:00:24.862394 1 base_controller.go:111] Starting #1 worker of ConsoleOperator controller ... E0505 13:00:24.862486 1 status.go:130] SyncLoopRefreshDegraded FailedGet route.route.openshift.io "console" not found I0505 13:00:24.862509 1 base_controller.go:74] Caches are synced for HealthCheckController I0505 13:00:24.862525 1 base_controller.go:111] Starting #1 worker of HealthCheckController controller ... I0505 13:00:24.862530 1 base_controller.go:74] Caches are synced for DownloadsRouteController I0505 13:00:24.862541 1 base_controller.go:111] Starting #1 worker of DownloadsRouteController controller ... I0505 13:00:24.862515 1 base_controller.go:74] Caches are synced for OAuthClientsController I0505 13:00:24.862568 1 base_controller.go:111] Starting #1 worker of OAuthClientsController controller ... I0505 13:00:24.862559 1 base_controller.go:74] Caches are synced for ConsoleServiceController I0505 13:00:24.862586 1 base_controller.go:74] Caches are synced for OAuthClientSecretController I0505 13:00:24.862588 1 base_controller.go:111] Starting #1 worker of ConsoleServiceController controller ... I0505 13:00:24.862594 1 base_controller.go:111] Starting #1 worker of OAuthClientSecretController controller ... I0505 13:00:24.862569 1 base_controller.go:74] Caches are synced for OIDCSetupController I0505 13:00:24.862641 1 base_controller.go:111] Starting #1 worker of OIDCSetupController controller ... I0505 13:00:24.862656 1 base_controller.go:74] Caches are synced for ConsoleDownloadsDeploymentSyncController I0505 13:00:24.862672 1 base_controller.go:111] Starting #1 worker of ConsoleDownloadsDeploymentSyncController controller ... I0505 13:00:24.862720 1 base_controller.go:74] Caches are synced for ConsoleServiceController I0505 13:00:24.862734 1 base_controller.go:111] Starting #1 worker of ConsoleServiceController controller ... I0505 13:00:24.862848 1 base_controller.go:74] Caches are synced for ManagementStateController I0505 13:00:24.862862 1 base_controller.go:111] Starting #1 worker of ManagementStateController controller ... I0505 13:00:24.863019 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Warning' reason: 'FastControllerResync' Controller "HealthCheckController" resync interval is set to 30s which might lead to client request throttling I0505 13:00:24.862579 1 base_controller.go:74] Caches are synced for UnsupportedConfigOverridesController I0505 13:00:24.863188 1 base_controller.go:111] Starting #1 worker of UnsupportedConfigOverridesController controller ... E0505 13:00:24.868436 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" I0505 13:00:24.869270 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorVersionChanged' clusteroperator/console version "operator" changed from "" to "4.18.9" I0505 13:00:24.869794 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}],"relatedObjects":[{"group":"console.openshift.io","name":"monitoring-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"networking-console-plugin","resource":"consoleplugins"},{"group":"operator.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"infrastructures"},{"group":"config.openshift.io","name":"cluster","resource":"proxies"},{"group":"config.openshift.io","name":"cluster","resource":"oauths"},{"group":"oauth.openshift.io","name":"console","resource":"oauthclients"},{"group":"","name":"openshift-console-operator","resource":"namespaces"},{"group":"","name":"openshift-console","resource":"namespaces"},{"group":"","name":"console-public","namespace":"openshift-config-managed","resource":"configmaps"}],"versions":[{"name":"operator","version":"4.18.9"}]}} E0505 13:00:24.880138 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" E0505 13:00:24.890286 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" I0505 13:00:24.890493 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'PodDisruptionBudgetCreated' Created PodDisruptionBudget.policy/downloads -n openshift-console because it was missing I0505 13:00:24.890622 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'PodDisruptionBudgetCreated' Created PodDisruptionBudget.policy/console -n openshift-console because it was missing I0505 13:00:24.890702 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded set to False ("All is well"),Progressing set to False ("All is well"),Available set to Unknown (""),Upgradeable set to Unknown (""),EvaluationConditionsDetected set to Unknown (""),status.relatedObjects changed from [] to [{"console.openshift.io" "consoleplugins" "" "monitoring-plugin"} {"console.openshift.io" "consoleplugins" "" "networking-console-plugin"} {"operator.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "infrastructures" "" "cluster"} {"config.openshift.io" "proxies" "" "cluster"} {"config.openshift.io" "oauths" "" "cluster"} {"oauth.openshift.io" "oauthclients" "" "console"} {"" "namespaces" "" "openshift-console-operator"} {"" "namespaces" "" "openshift-console"} {"" "configmaps" "openshift-config-managed" "console-public"}],status.versions changed from [] to [{"operator" "4.18.9"}] E0505 13:00:24.901680 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" I0505 13:00:24.902410 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentCreated' Created Deployment.apps/downloads -n openshift-console because it was missing E0505 13:00:24.911681 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" E0505 13:00:24.936408 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: route.route.openshift.io \"console\" not found" E0505 13:00:24.936548 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: route.route.openshift.io \"downloads\" not found" E0505 13:00:24.938378 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: route.route.openshift.io \"console\" not found" E0505 13:00:24.943080 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: route.route.openshift.io \"console\" not found" E0505 13:00:24.949915 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" E0505 13:00:24.950314 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: route.route.openshift.io \"console\" not found" E0505 13:00:24.954347 1 status.go:130] DownloadsDefaultRouteSyncDegraded FailedAdmitDefaultRoute no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console E0505 13:00:24.954358 1 status.go:130] DownloadsDefaultRouteSyncUpgradeable FailedAdmitDefaultRoute no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console E0505 13:00:24.954838 1 status.go:130] ConsoleDefaultRouteSyncDegraded FailedAdmitDefaultRoute no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console E0505 13:00:24.954852 1 status.go:130] ConsoleDefaultRouteSyncUpgradeable FailedAdmitDefaultRoute no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console I0505 13:00:24.992156 1 reflector.go:368] Caches populated for *v1.ConfigMap from k8s.io/client-go/informers/factory.go:160 I0505 13:00:25.061775 1 base_controller.go:74] Caches are synced for console I0505 13:00:25.061794 1 base_controller.go:111] Starting #1 worker of console controller ... I0505 13:00:25.070739 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:25.365157 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "All is well" to "OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found" E0505 13:00:25.390012 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" I0505 13:00:25.489350 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:25.557552 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found" to "OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console",Upgradeable changed from Unknown to False ("DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console") E0505 13:00:25.581019 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console" I0505 13:00:25.690992 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:25.758576 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "OAuthClientsControllerDegraded: route.route.openshift.io \"console\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" to "OAuthClientsControllerDegraded: no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" I0505 13:00:25.771953 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ConfigMapCreated' Created ConfigMap/default-ingress-cert -n openshift-console because it was missing I0505 13:00:25.969982 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'SecretCreated' Created Secret/console-oauth-config -n openshift-console because it was missing I0505 13:00:26.163375 1 request.go:700] Waited for 1.18931091s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:26.176644 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ServiceCreated' Created Service/downloads -n openshift-console because it was missing I0505 13:00:26.377188 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ServiceCreated' Created Service/console -n openshift-console because it was missing I0505 13:00:26.571459 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ConfigMapCreated' Created ConfigMap/oauth-serving-cert -n openshift-console because it was missing W0505 13:00:26.571576 1 dynamic_operator_client.go:352] .status.conditions["ResourceSyncControllerDegraded"].reason is missing; this will eventually be fatal W0505 13:00:26.571595 1 dynamic_operator_client.go:355] .status.conditions["ResourceSyncControllerDegraded"].message is missing; this will eventually be fatal I0505 13:00:27.163501 1 request.go:700] Waited for 1.751777692s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:27.376972 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: secret \"console-oauth-config\" not found" I0505 13:00:27.384879 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: secret \"console-oauth-config\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:27.397794 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "OAuthClientsControllerDegraded: no ingress for host console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route console in namespace openshift-console\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" to "OAuthClientsControllerDegraded: secret \"console-oauth-config\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" I0505 13:00:28.363509 1 request.go:700] Waited for 1.976760119s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:28.570955 1 base_controller.go:271] "Unhandled Error" err="UnsupportedConfigOverridesController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" W0505 13:00:28.777435 1 dynamic_operator_client.go:352] .status.conditions["ResourceSyncControllerDegraded"].reason is missing; this will eventually be fatal W0505 13:00:28.777455 1 dynamic_operator_client.go:355] .status.conditions["ResourceSyncControllerDegraded"].message is missing; this will eventually be fatal I0505 13:00:29.363615 1 request.go:700] Waited for 2.524366205s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:29.371553 1 base_controller.go:271] "Unhandled Error" err="ConsoleOperator reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:29.508884 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ConfigMapCreated' Created ConfigMap/console-config -n openshift-console because it was missing I0505 13:00:30.563680 1 request.go:700] Waited for 2.535561191s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:31.396550 1 status.go:130] SyncLoopRefreshProgressing InProgress changes made during sync updates, additional sync expected E0505 13:00:31.396568 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:31.396635 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentCreated' Created Deployment.apps/console -n openshift-console because it was missing I0505 13:00:31.424238 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ConfigMapCreated' Created ConfigMap/console-public -n openshift-config-managed because it was missing I0505 13:00:31.763238 1 request.go:700] Waited for 2.535487519s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:32.170841 1 base_controller.go:271] "Unhandled Error" err="ConsoleDownloadsDeploymentSyncController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:32.177419 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:00:32.184149 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed E0505 13:00:32.770893 1 base_controller.go:271] "Unhandled Error" err="ConsoleRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:32.963291 1 request.go:700] Waited for 2.116530952s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:32.971946 1 base_controller.go:271] "Unhandled Error" err="OIDCSetupController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:33.573175 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:33.786894 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: secret \"console-oauth-config\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"DeploymentAvailable: 0 replicas available for console deployment","reason":"Deployment_InsufficientReplicas","status":"False","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:33.802427 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing changed from False to True ("SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected"),Available changed from Unknown to False ("DeploymentAvailable: 0 replicas available for console deployment") I0505 13:00:33.807358 1 apps.go:155] Deployment "openshift-console/console" changes: {"metadata":{"annotations":{"console.openshift.io/service-ca-config-version":"12258","console.openshift.io/trusted-ca-config-version":"12267","operator.openshift.io/spec-hash":"2e2883a4e85e8992a497e2de97e7436482efeb4aaff5e2b21779aad0be04db6b"}},"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"metadata":{"annotations":{"console.openshift.io/service-ca-config-version":"12258","console.openshift.io/trusted-ca-config-version":"12267"}},"spec":{"containers":[{"command":["/opt/bridge/bin/bridge","--public-dir=/opt/bridge/static","--config=/var/console-config/console-config.yaml","--service-ca-file=/var/service-ca/service-ca.crt","--v=2"],"env":[{"name":"POD_NAME","valueFrom":{"fieldRef":{"apiVersion":"v1","fieldPath":"metadata.name"}}}],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7b84f135cfa446962ac6a1a03888a874e2e0ddedeefe32a30a70f535dcd2c721","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sleep","25"]}}},"livenessProbe":{"failureThreshold":1,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"name":"console","ports":[{"containerPort":8443,"name":"https","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"100Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"terminationMessagePolicy":"FallbackToLogsOnError","volumeMounts":[{"mountPath":"/var/serving-cert","name":"console-serving-cert","readOnly":true},{"mountPath":"/var/oauth-config","name":"console-oauth-config","readOnly":true},{"mountPath":"/var/console-config","name":"console-config","readOnly":true},{"mountPath":"/var/service-ca","name":"service-ca","readOnly":true},{"mountPath":"/etc/pki/ca-trust/extracted/pem","name":"trusted-ca-bundle","readOnly":true},{"mountPath":"/var/oauth-serving-cert","name":"oauth-serving-cert","readOnly":true}]}],"dnsPolicy":null,"serviceAccount":null,"volumes":[{"name":"console-serving-cert","secret":{"secretName":"console-serving-cert"}},{"name":"console-oauth-config","secret":{"secretName":"console-oauth-config"}},{"configMap":{"name":"console-config"},"name":"console-config"},{"configMap":{"name":"service-ca"},"name":"service-ca"},{"configMap":{"items":[{"key":"ca-bundle.crt","path":"tls-ca-bundle.pem"}],"name":"trusted-ca-bundle"},"name":"trusted-ca-bundle"},{"configMap":{"name":"oauth-serving-cert"},"name":"oauth-serving-cert"}]}}}} E0505 13:00:33.824227 1 status.go:130] SyncLoopRefreshProgressing InProgress changes made during sync updates, additional sync expected E0505 13:00:33.824239 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:33.824288 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/console -n openshift-console because it changed I0505 13:00:33.963674 1 request.go:700] Waited for 2.337286417s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:34.172436 1 base_controller.go:271] "Unhandled Error" err="CLIOIDCClientStatusController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:34.572325 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:35.162711 1 request.go:700] Waited for 2.322332916s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:35.171603 1 base_controller.go:271] "Unhandled Error" err="OAuthClientSecretController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:35.782105 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:36.163385 1 request.go:700] Waited for 2.33123348s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:36.216906 1 apps.go:155] Deployment "openshift-console/console" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"command":["/opt/bridge/bin/bridge","--public-dir=/opt/bridge/static","--config=/var/console-config/console-config.yaml","--service-ca-file=/var/service-ca/service-ca.crt","--v=2"],"env":[{"name":"POD_NAME","valueFrom":{"fieldRef":{"apiVersion":"v1","fieldPath":"metadata.name"}}}],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7b84f135cfa446962ac6a1a03888a874e2e0ddedeefe32a30a70f535dcd2c721","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sleep","25"]}}},"livenessProbe":{"failureThreshold":1,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"name":"console","ports":[{"containerPort":8443,"name":"https","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"100Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"terminationMessagePolicy":"FallbackToLogsOnError","volumeMounts":[{"mountPath":"/var/serving-cert","name":"console-serving-cert","readOnly":true},{"mountPath":"/var/oauth-config","name":"console-oauth-config","readOnly":true},{"mountPath":"/var/console-config","name":"console-config","readOnly":true},{"mountPath":"/var/service-ca","name":"service-ca","readOnly":true},{"mountPath":"/etc/pki/ca-trust/extracted/pem","name":"trusted-ca-bundle","readOnly":true},{"mountPath":"/var/oauth-serving-cert","name":"oauth-serving-cert","readOnly":true}]}],"dnsPolicy":null,"serviceAccount":null,"volumes":[{"name":"console-serving-cert","secret":{"secretName":"console-serving-cert"}},{"name":"console-oauth-config","secret":{"secretName":"console-oauth-config"}},{"configMap":{"name":"console-config"},"name":"console-config"},{"configMap":{"name":"service-ca"},"name":"service-ca"},{"configMap":{"items":[{"key":"ca-bundle.crt","path":"tls-ca-bundle.pem"}],"name":"trusted-ca-bundle"},"name":"trusted-ca-bundle"},{"configMap":{"name":"oauth-serving-cert"},"name":"oauth-serving-cert"}]}}}} E0505 13:00:36.225362 1 status.go:130] SyncLoopRefreshProgressing InProgress changes made during sync updates, additional sync expected E0505 13:00:36.225380 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:36.225604 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/console -n openshift-console because it changed E0505 13:00:36.263241 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:36.263283 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment E0505 13:00:36.576172 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:37.363306 1 request.go:700] Waited for 2.319989793s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:38.172838 1 base_controller.go:271] "Unhandled Error" err="UnsupportedConfigOverridesController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:38.363441 1 request.go:700] Waited for 2.379651169s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:38.587967 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: secret \"console-oauth-config\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"SyncLoopRefreshProgressing: working toward version 4.18.9, 0 replicas available","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"DeploymentAvailable: 0 replicas available for console deployment","reason":"Deployment_InsufficientReplicas","status":"False","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:38.598196 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing message changed from "SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected" to "SyncLoopRefreshProgressing: working toward version 4.18.9, 0 replicas available" E0505 13:00:38.601114 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:38.601129 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment E0505 13:00:38.624986 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:38.625003 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:39.363455 1 request.go:700] Waited for 2.378095673s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:39.782560 1 base_controller.go:271] "Unhandled Error" err="OAuthClientsController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:39.790327 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"OAuthClientsControllerDegraded: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"SyncLoopRefreshProgressing: working toward version 4.18.9, 0 replicas available","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"DeploymentAvailable: 0 replicas available for console deployment","reason":"Deployment_InsufficientReplicas","status":"False","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:39.800910 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "OAuthClientsControllerDegraded: secret \"console-oauth-config\" not found\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" to "OAuthClientsControllerDegraded: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" E0505 13:00:39.808888 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:39.808904 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:40.563018 1 request.go:700] Waited for 2.388376221s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:41.272801 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:41.272816 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment I0505 13:00:41.563184 1 request.go:700] Waited for 2.118847581s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:41.574719 1 base_controller.go:271] "Unhandled Error" err="ConsoleDownloadsDeploymentSyncController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:41.581553 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:00:41.588936 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed W0505 13:00:41.788160 1 dynamic_operator_client.go:355] .status.conditions["OAuthClientsControllerDegraded"].message is missing; this will eventually be fatal E0505 13:00:41.805570 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 0 replicas available E0505 13:00:41.805591 1 status.go:130] DeploymentAvailable InsufficientReplicas 0 replicas available for console deployment E0505 13:00:41.973680 1 base_controller.go:271] "Unhandled Error" err="ConsoleRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:42.174418 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 1 replicas available E0505 13:00:42.572996 1 base_controller.go:271] "Unhandled Error" err="OIDCSetupController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:42.763499 1 request.go:700] Waited for 2.175150959s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:42.977571 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:43.381581 1 base_controller.go:271] "Unhandled Error" err="CLIOIDCClientStatusController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:43.763611 1 request.go:700] Waited for 2.136083149s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:43.777395 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:44.020151 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"DownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"SyncLoopRefreshProgressing: working toward version 4.18.9, 0 replicas available","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"DeploymentAvailable: 0 replicas available for console deployment","reason":"Deployment_InsufficientReplicas","status":"False","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:44.035868 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "OAuthClientsControllerDegraded: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again\nDownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" to "DownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" E0505 13:00:44.578715 1 base_controller.go:271] "Unhandled Error" err="OAuthClientSecretController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:44.763666 1 request.go:700] Waited for 2.178142861s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:44.976755 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:45.763705 1 request.go:700] Waited for 2.331011687s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:45.781688 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:46.963112 1 request.go:700] Waited for 2.164207069s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:47.577054 1 base_controller.go:271] "Unhandled Error" err="UnsupportedConfigOverridesController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:47.963294 1 request.go:700] Waited for 2.167830954s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:48.589858 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"DownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:33Z","message":"SyncLoopRefreshProgressing: working toward version 4.18.9, 1 replicas available","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:48.601357 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing message changed from "SyncLoopRefreshProgressing: working toward version 4.18.9, 0 replicas available" to "SyncLoopRefreshProgressing: working toward version 4.18.9, 1 replicas available",Available changed from False to True ("All is well") I0505 13:00:49.163482 1 request.go:700] Waited for 1.977901194s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:50.362709 1 request.go:700] Waited for 1.913186057s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:50.381616 1 base_controller.go:271] "Unhandled Error" err="ConsoleDownloadsDeploymentSyncController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:50.388553 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:00:50.396286 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed I0505 13:00:50.599869 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"DownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:50Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:00:25Z","message":"DownloadsDefaultRouteSyncUpgradeable: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console","reason":"DownloadsDefaultRouteSync_FailedAdmitDefaultRoute","status":"False","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:00:50.611849 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing changed from True to False ("All is well") E0505 13:00:51.176619 1 base_controller.go:271] "Unhandled Error" err="OIDCSetupController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:51.363179 1 request.go:700] Waited for 1.77853589s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:51.584023 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:51.974545 1 base_controller.go:271] "Unhandled Error" err="CLIOIDCClientStatusController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:52.363635 1 request.go:700] Waited for 1.935165192s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:52.386155 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:52.975072 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:53.562775 1 request.go:700] Waited for 1.57889548s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:53.774245 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:54.562789 1 request.go:700] Waited for 1.581937372s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:54.975300 1 base_controller.go:271] "Unhandled Error" err="UnsupportedConfigOverridesController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:55.563727 1 request.go:700] Waited for 1.534702374s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status I0505 13:00:56.762674 1 request.go:700] Waited for 1.376763715s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:57.174922 1 base_controller.go:271] "Unhandled Error" err="ConsoleDownloadsDeploymentSyncController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:57.182037 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:00:57.188503 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed E0505 13:00:57.580513 1 base_controller.go:271] "Unhandled Error" err="ConsoleCLIDownloadsController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:57.963660 1 request.go:700] Waited for 1.123800354s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:57.978094 1 base_controller.go:271] "Unhandled Error" err="CLIOIDCClientStatusController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:00:58.374402 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:00:59.162832 1 request.go:700] Waited for 1.121062379s due to client-side throttling, not priority and fairness, request: PUT:https://172.30.0.1:443/apis/operator.openshift.io/v1/consoles/cluster/status E0505 13:00:59.173833 1 base_controller.go:271] "Unhandled Error" err="ConsoleServiceController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" E0505 13:01:00.980415 1 base_controller.go:271] "Unhandled Error" err="ConsoleDownloadsDeploymentSyncController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:01:00.987113 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:01:00.994429 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed I0505 13:01:01.197736 1 apps.go:155] Deployment "openshift-console/downloads" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"args":["-c","cat \u003c\u003cEOF \u003e\u003e/tmp/serve.py\nimport errno, http.server, os, re, signal, socket, sys, tarfile, tempfile, threading, time, zipfile\n\nsignal.signal(signal.SIGTERM, lambda signum, frame: sys.exit(0))\n\ndef write_index(path, message):\n with open(path, 'wb') as f:\n f.write('\\n'.join([\n '\u003c!doctype html\u003e',\n '\u003chtml lang=\"en\"\u003e',\n '\u003chead\u003e',\n ' \u003cmeta charset=\"utf-8\"\u003e',\n '\u003c/head\u003e',\n '\u003cbody\u003e',\n ' {}'.format(message),\n '\u003c/body\u003e',\n '\u003c/html\u003e',\n '',\n ]).encode('utf-8'))\n\n# Launch multiple listeners as threads\nclass Thread(threading.Thread):\n def __init__(self, i, socket):\n threading.Thread.__init__(self)\n self.i = i\n self.socket = socket\n self.daemon = True\n self.start()\n\n def run(self):\n server = http.server.SimpleHTTPRequestHandler\n server.server_version = \"OpenShift Downloads Server\"\n server.sys_version = \"\"\n httpd = http.server.HTTPServer(addr, server, False)\n\n # Prevent the HTTP server from re-binding every handler.\n # https://stackoverflow.com/questions/46210672/\n httpd.socket = self.socket\n httpd.server_bind = self.server_close = lambda self: None\n\n httpd.serve_forever()\n\ntemp_dir = tempfile.mkdtemp()\nprint('serving from {}'.format(temp_dir))\nos.chdir(temp_dir)\nfor arch in ['amd64', 'arm64', 'ppc64le', 's390x']:\n os.mkdir(arch)\ncontent = ['\u003ca href=\"oc-license\"\u003elicense\u003c/a\u003e']\nos.symlink('/usr/share/openshift/LICENSE', 'oc-license')\n\nfor arch, operating_system, path in [\n ('amd64', 'linux', '/usr/share/openshift/linux_amd64/oc'),\n ('amd64', 'mac', '/usr/share/openshift/mac/oc'),\n ('amd64', 'windows', '/usr/share/openshift/windows/oc.exe'),\n ('arm64', 'linux', '/usr/share/openshift/linux_arm64/oc'),\n ('arm64', 'mac', '/usr/share/openshift/mac_arm64/oc'),\n ('ppc64le', 'linux', '/usr/share/openshift/linux_ppc64le/oc'),\n ('s390x', 'linux', '/usr/share/openshift/linux_s390x/oc'),\n ]:\n basename = os.path.basename(path)\n target_path = os.path.join(arch, operating_system, basename)\n os.mkdir(os.path.join(arch, operating_system))\n os.symlink(path, target_path)\n base_root, _ = os.path.splitext(basename)\n archive_path_root = os.path.join(arch, operating_system, base_root)\n with tarfile.open('{}.tar'.format(archive_path_root), 'w') as tar:\n tar.add(path, basename)\n with zipfile.ZipFile('{}.zip'.format(archive_path_root), 'w') as zip:\n zip.write(path, basename)\n content.append(\n '\u003ca href=\"{0}\"\u003eoc ({1} {2})\u003c/a\u003e (\u003ca href=\"{3}.tar\"\u003etar\u003c/a\u003e \u003ca href=\"{3}.zip\"\u003ezip\u003c/a\u003e)'.format(\n target_path, arch, operating_system, archive_path_root\n )\n )\n\nfor root, directories, filenames in os.walk(temp_dir):\n root_link = os.path.relpath(temp_dir, os.path.join(root, 'child')).replace(os.path.sep, '/')\n for directory in directories:\n write_index(\n path=os.path.join(root, directory, 'index.html'),\n message='\u003cp\u003eDirectory listings are disabled. See \u003ca href=\"{}\"\u003ehere\u003c/a\u003e for available content.\u003c/p\u003e'.format(root_link),\n )\n\nwrite_index(\n path=os.path.join(temp_dir, 'index.html'),\n message='\\n'.join(\n ['\u003cul\u003e'] +\n [' \u003cli\u003e{}\u003c/li\u003e'.format(entry) for entry in content] +\n ['\u003c/ul\u003e']\n ),\n)\n\n# Create socket\n# IPv6 should handle IPv4 passively so long as it is not bound to a\n# specific address or set to IPv6_ONLY\n# https://stackoverflow.com/questions/25817848/python-3-does-http-server-support-ipv6\ntry:\n addr = ('::', 8080)\n sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)\nexcept socket.error as err:\n # errno.EAFNOSUPPORT is \"socket.error: [Errno 97] Address family not supported by protocol\"\n # When IPv6 is disabled, socket will bind using IPv4.\n if err.errno == errno.EAFNOSUPPORT:\n addr = ('', 8080)\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n else:\n raise \nsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\nsock.bind(addr)\nsock.listen(5)\n\n[Thread(i, socket=sock) for i in range(100)]\ntime.sleep(9e9)\nEOF\nexec python3 /tmp/serve.py\n"],"command":["/bin/sh"],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cdba3ca6e2b89d411b5ef466468bc8d91a07bf4bd14238baa65fb4397f54257d","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"name":"download-server","ports":[{"containerPort":8080,"name":"http","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/","port":8080,"scheme":"HTTP"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"50Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"terminationMessagePolicy":"FallbackToLogsOnError"}],"dnsPolicy":null,"restartPolicy":null,"schedulerName":null}}}} I0505 13:01:01.206545 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/downloads -n openshift-console because it changed E0505 13:01:01.375704 1 base_controller.go:271] "Unhandled Error" err="DownloadsRouteController reconciliation failed: Operation cannot be fulfilled on consoles.operator.openshift.io \"cluster\": the object has been modified; please apply your changes to the latest version and try again" I0505 13:01:01.596101 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:00:50Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:01:01Z","message":"All is well","reason":"AsExpected","status":"True","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:01:01.608321 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Degraded message changed from "DownloadsDefaultRouteSyncDegraded: no ingress for host downloads-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com in route downloads in namespace openshift-console" to "All is well",Upgradeable changed from False to True ("All is well") I0505 13:01:38.373027 1 core.go:352] ConfigMap "openshift-console/console-config" changes: {"apiVersion":"v1","data":{"console-config.yaml":"apiVersion: console.openshift.io/v1\nauth:\n authType: openshift\n clientID: console\n clientSecretFile: /var/oauth-config/clientSecret\n oauthEndpointCAFile: /var/oauth-serving-cert/ca-bundle.crt\nclusterInfo:\n consoleBaseAddress: https://console-openshift-console.apps.rosa.kx-d2a1d040d2.9ohn.p3.openshiftapps.com\n controlPlaneTopology: External\n masterPublicURL: https://api.kx-d2a1d040d2.9ohn.p3.openshiftapps.com:443\n nodeArchitectures:\n - amd64\n nodeOperatingSystems:\n - linux\n releaseVersion: 4.18.9\ncustomization:\n branding: rosa\n capabilities:\n - name: LightspeedButton\n visibility:\n state: Enabled\n - name: GettingStartedBanner\n visibility:\n state: Enabled\n developerCatalog:\n categories: null\n types:\n state: Enabled\n documentationBaseURL: https://docs.redhat.com/en/documentation/red_hat_openshift_service_on_aws/4/\ni18nNamespaces:\n- plugin__networking-console-plugin\n- plugin__monitoring-plugin\nkind: ConsoleConfig\nmonitoringInfo:\n alertmanagerTenancyHost: alertmanager-main.openshift-monitoring.svc:9092\n alertmanagerUserWorkloadHost: alertmanager-main.openshift-monitoring.svc:9094\nplugins:\n monitoring-plugin: https://monitoring-plugin.openshift-monitoring.svc.cluster.local:9443/\n networking-console-plugin: https://networking-console-plugin.openshift-network-console.svc.cluster.local:9443/\nproviders: {}\nservingInfo:\n bindAddress: https://[::]:8443\n certFile: /var/serving-cert/tls.crt\n keyFile: /var/serving-cert/tls.key\nsession: {}\ntelemetry:\n CLUSTER_ID: 6ce5fc65-a9b6-4911-b682-2e498e78e3f3\n ORGANIZATION_ID: \"18164403\"\n SEGMENT_API_HOST: console.redhat.com/connections/api/v1\n SEGMENT_JS_HOST: console.redhat.com/connections/cdn\n SEGMENT_PUBLIC_API_KEY: BnuS1RP39EmLQjP21ko67oDjhbl9zpNU\n"},"kind":"ConfigMap","metadata":{"creationTimestamp":null,"managedFields":null,"resourceVersion":null,"uid":null}} I0505 13:01:38.373153 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'ConfigMapUpdated' Updated ConfigMap/console-config -n openshift-console: cause by changes in data.console-config.yaml I0505 13:01:38.384491 1 apps.go:155] Deployment "openshift-console/console" changes: {"metadata":{"annotations":{"console.openshift.io/console-config-version":"13697","operator.openshift.io/spec-hash":"7d07426c0217c1bd9f9663f3d8eb6c1755473cf944f120ce0a10d19c6d01a060"}},"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"metadata":{"annotations":{"console.openshift.io/console-config-version":"13697"}},"spec":{"containers":[{"command":["/opt/bridge/bin/bridge","--public-dir=/opt/bridge/static","--config=/var/console-config/console-config.yaml","--service-ca-file=/var/service-ca/service-ca.crt","--v=2"],"env":[{"name":"POD_NAME","valueFrom":{"fieldRef":{"apiVersion":"v1","fieldPath":"metadata.name"}}}],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7b84f135cfa446962ac6a1a03888a874e2e0ddedeefe32a30a70f535dcd2c721","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sleep","25"]}}},"livenessProbe":{"failureThreshold":1,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"name":"console","ports":[{"containerPort":8443,"name":"https","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"100Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"terminationMessagePolicy":"FallbackToLogsOnError","volumeMounts":[{"mountPath":"/var/serving-cert","name":"console-serving-cert","readOnly":true},{"mountPath":"/var/oauth-config","name":"console-oauth-config","readOnly":true},{"mountPath":"/var/console-config","name":"console-config","readOnly":true},{"mountPath":"/var/service-ca","name":"service-ca","readOnly":true},{"mountPath":"/etc/pki/ca-trust/extracted/pem","name":"trusted-ca-bundle","readOnly":true},{"mountPath":"/var/oauth-serving-cert","name":"oauth-serving-cert","readOnly":true}]}],"dnsPolicy":null,"serviceAccount":null,"volumes":[{"name":"console-serving-cert","secret":{"secretName":"console-serving-cert"}},{"name":"console-oauth-config","secret":{"secretName":"console-oauth-config"}},{"configMap":{"name":"console-config"},"name":"console-config"},{"configMap":{"name":"service-ca"},"name":"service-ca"},{"configMap":{"items":[{"key":"ca-bundle.crt","path":"tls-ca-bundle.pem"}],"name":"trusted-ca-bundle"},"name":"trusted-ca-bundle"},{"configMap":{"name":"oauth-serving-cert"},"name":"oauth-serving-cert"}]}}}} E0505 13:01:38.395299 1 status.go:130] SyncLoopRefreshProgressing InProgress changes made during sync updates, additional sync expected I0505 13:01:38.395394 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/console -n openshift-console because it changed I0505 13:01:38.441843 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:01:38Z","message":"SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:01:01Z","message":"All is well","reason":"AsExpected","status":"True","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:01:38.464813 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing changed from False to True ("SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected") I0505 13:01:38.489792 1 apps.go:155] Deployment "openshift-console/console" changes: {"spec":{"progressDeadlineSeconds":null,"revisionHistoryLimit":null,"template":{"spec":{"containers":[{"command":["/opt/bridge/bin/bridge","--public-dir=/opt/bridge/static","--config=/var/console-config/console-config.yaml","--service-ca-file=/var/service-ca/service-ca.crt","--v=2"],"env":[{"name":"POD_NAME","valueFrom":{"fieldRef":{"apiVersion":"v1","fieldPath":"metadata.name"}}}],"image":"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7b84f135cfa446962ac6a1a03888a874e2e0ddedeefe32a30a70f535dcd2c721","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sleep","25"]}}},"livenessProbe":{"failureThreshold":1,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"name":"console","ports":[{"containerPort":8443,"name":"https","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1},"resources":{"requests":{"cpu":"10m","memory":"100Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":false},"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/health","port":8443,"scheme":"HTTPS"},"periodSeconds":10,"successThreshold":1,"timeoutSeconds":10},"terminationMessagePolicy":"FallbackToLogsOnError","volumeMounts":[{"mountPath":"/var/serving-cert","name":"console-serving-cert","readOnly":true},{"mountPath":"/var/oauth-config","name":"console-oauth-config","readOnly":true},{"mountPath":"/var/console-config","name":"console-config","readOnly":true},{"mountPath":"/var/service-ca","name":"service-ca","readOnly":true},{"mountPath":"/etc/pki/ca-trust/extracted/pem","name":"trusted-ca-bundle","readOnly":true},{"mountPath":"/var/oauth-serving-cert","name":"oauth-serving-cert","readOnly":true}]}],"dnsPolicy":null,"serviceAccount":null,"volumes":[{"name":"console-serving-cert","secret":{"secretName":"console-serving-cert"}},{"name":"console-oauth-config","secret":{"secretName":"console-oauth-config"}},{"configMap":{"name":"console-config"},"name":"console-config"},{"configMap":{"name":"service-ca"},"name":"service-ca"},{"configMap":{"items":[{"key":"ca-bundle.crt","path":"tls-ca-bundle.pem"}],"name":"trusted-ca-bundle"},"name":"trusted-ca-bundle"},{"configMap":{"name":"oauth-serving-cert"},"name":"oauth-serving-cert"}]}}}} E0505 13:01:38.504340 1 status.go:130] SyncLoopRefreshProgressing InProgress changes made during sync updates, additional sync expected I0505 13:01:38.504398 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'DeploymentUpdated' Updated Deployment.apps/console -n openshift-console because it changed E0505 13:01:38.534502 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 1 replicas available I0505 13:01:38.639769 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:01:38Z","message":"SyncLoopRefreshProgressing: working toward version 4.18.9, 1 replicas available","reason":"SyncLoopRefresh_InProgress","status":"True","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:01:01Z","message":"All is well","reason":"AsExpected","status":"True","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:01:38.784129 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing message changed from "SyncLoopRefreshProgressing: changes made during sync updates, additional sync expected" to "SyncLoopRefreshProgressing: working toward version 4.18.9, 1 replicas available" E0505 13:01:38.967277 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 1 replicas available E0505 13:01:39.567439 1 status.go:130] SyncLoopRefreshProgressing InProgress working toward version 4.18.9, 1 replicas available I0505 13:01:49.460581 1 status_controller.go:225] clusteroperator/console diff {"status":{"conditions":[{"lastTransitionTime":"2026-05-05T13:00:24Z","message":"All is well","reason":"AsExpected","status":"False","type":"Degraded"},{"lastTransitionTime":"2026-05-05T13:01:49Z","message":"All is well","reason":"AsExpected","status":"False","type":"Progressing"},{"lastTransitionTime":"2026-05-05T13:00:48Z","message":"All is well","reason":"AsExpected","status":"True","type":"Available"},{"lastTransitionTime":"2026-05-05T13:01:01Z","message":"All is well","reason":"AsExpected","status":"True","type":"Upgradeable"},{"lastTransitionTime":"2026-05-05T13:00:24Z","reason":"NoData","status":"Unknown","type":"EvaluationConditionsDetected"}]}} I0505 13:01:49.473571 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: Progressing changed from True to False ("All is well") I0505 13:07:25.005091 1 status_controller.go:225] clusteroperator/console diff {"status":{"relatedObjects":[{"group":"console.openshift.io","name":"gitops-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"monitoring-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"networking-console-plugin","resource":"consoleplugins"},{"group":"operator.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"infrastructures"},{"group":"config.openshift.io","name":"cluster","resource":"proxies"},{"group":"config.openshift.io","name":"cluster","resource":"oauths"},{"group":"oauth.openshift.io","name":"console","resource":"oauthclients"},{"group":"","name":"openshift-console-operator","resource":"namespaces"},{"group":"","name":"openshift-console","resource":"namespaces"},{"group":"","name":"console-public","namespace":"openshift-config-managed","resource":"configmaps"}]}} I0505 13:07:25.029205 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: status.relatedObjects changed from [{"console.openshift.io" "consoleplugins" "" "monitoring-plugin"} {"console.openshift.io" "consoleplugins" "" "networking-console-plugin"} {"operator.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "infrastructures" "" "cluster"} {"config.openshift.io" "proxies" "" "cluster"} {"config.openshift.io" "oauths" "" "cluster"} {"oauth.openshift.io" "oauthclients" "" "console"} {"" "namespaces" "" "openshift-console-operator"} {"" "namespaces" "" "openshift-console"} {"" "configmaps" "openshift-config-managed" "console-public"}] to [{"console.openshift.io" "consoleplugins" "" "gitops-plugin"} {"console.openshift.io" "consoleplugins" "" "monitoring-plugin"} {"console.openshift.io" "consoleplugins" "" "networking-console-plugin"} {"operator.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "infrastructures" "" "cluster"} {"config.openshift.io" "proxies" "" "cluster"} {"config.openshift.io" "oauths" "" "cluster"} {"oauth.openshift.io" "oauthclients" "" "console"} {"" "namespaces" "" "openshift-console-operator"} {"" "namespaces" "" "openshift-console"} {"" "configmaps" "openshift-config-managed" "console-public"}] I0505 13:10:24.794100 1 status_controller.go:225] clusteroperator/console diff {"status":{"relatedObjects":[{"group":"console.openshift.io","name":"gitops-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"monitoring-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"networking-console-plugin","resource":"consoleplugins"},{"group":"console.openshift.io","name":"pipelines-console-plugin","resource":"consoleplugins"},{"group":"operator.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"consoles"},{"group":"config.openshift.io","name":"cluster","resource":"infrastructures"},{"group":"config.openshift.io","name":"cluster","resource":"proxies"},{"group":"config.openshift.io","name":"cluster","resource":"oauths"},{"group":"oauth.openshift.io","name":"console","resource":"oauthclients"},{"group":"","name":"openshift-console-operator","resource":"namespaces"},{"group":"","name":"openshift-console","resource":"namespaces"},{"group":"","name":"console-public","namespace":"openshift-config-managed","resource":"configmaps"}]}} I0505 13:10:24.804544 1 event.go:377] Event(v1.ObjectReference{Kind:"Deployment", Namespace:"openshift-console-operator", Name:"console-operator", UID:"9efdb2d5-936b-44ca-8b79-301a8ade493a", APIVersion:"apps/v1", ResourceVersion:"", FieldPath:""}): type: 'Normal' reason: 'OperatorStatusChanged' Status for clusteroperator/console changed: status.relatedObjects changed from [{"console.openshift.io" "consoleplugins" "" "gitops-plugin"} {"console.openshift.io" "consoleplugins" "" "monitoring-plugin"} {"console.openshift.io" "consoleplugins" "" "networking-console-plugin"} {"operator.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "infrastructures" "" "cluster"} {"config.openshift.io" "proxies" "" "cluster"} {"config.openshift.io" "oauths" "" "cluster"} {"oauth.openshift.io" "oauthclients" "" "console"} {"" "namespaces" "" "openshift-console-operator"} {"" "namespaces" "" "openshift-console"} {"" "configmaps" "openshift-config-managed" "console-public"}] to [{"console.openshift.io" "consoleplugins" "" "gitops-plugin"} {"console.openshift.io" "consoleplugins" "" "monitoring-plugin"} {"console.openshift.io" "consoleplugins" "" "networking-console-plugin"} {"console.openshift.io" "consoleplugins" "" "pipelines-console-plugin"} {"operator.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "consoles" "" "cluster"} {"config.openshift.io" "infrastructures" "" "cluster"} {"config.openshift.io" "proxies" "" "cluster"} {"config.openshift.io" "oauths" "" "cluster"} {"oauth.openshift.io" "oauthclients" "" "console"} {"" "namespaces" "" "openshift-console-operator"} {"" "namespaces" "" "openshift-console"} {"" "configmaps" "openshift-config-managed" "console-public"}]