-
Bug
-
Resolution: Not a Bug
-
Critical
-
None
-
4.18
-
None
-
Quality / Stability / Reliability
-
False
-
-
None
-
Critical
-
None
-
x86_64
-
Production
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Damaged hostedcluster yaml for node
Version-Release number of selected component (if applicable):{code:none}
How reproducible:
Steps to Reproduce:
1. edit the hsotedcluster.yaml to add users
2. improper indent - spec section disappears
3. ACM can no longer see the hosted clusters
modified to add users
It should be placed as it is in the working example below. I think it was placed at the same level as spec e.g. I think it was done incorrectly like this, but am not sure:
```
spec:
...
configuration:
oauth:
identityProviders:
- htpasswd:
fileData:
name: ocp-admin-htpasswd
mappingMethod: claim
name: local
type: HTPasswd
spec before insert (sample, not exact)
spec:
fips: false
release:
image: 'quay.io/openshift-release-dev/ocp-release:4.18.21-multi'
dns:
baseDomain: apps.xx01nc.ocp.med.umich.edu
controllerAvailabilityPolicy: HighlyAvailable
infraID: dt01nc
etcd:
managed:
storage:
persistentVolume:
size: 8Gi
storageClassName: ocs-storagecluster-ceph-rbd
type: PersistentVolume
managementType: Managed
infrastructureAvailabilityPolicy: HighlyAvailable
platform:
kubevirt:
baseDomainPassthrough: true
generateID: gfzgc2ggkt
storageDriver:
manual:
storageClassMapping:
- guestStorageClassName: ocs-storagecluster-ceph-rbd
infraStorageClassName: ocs-storagecluster-ceph-rbd
type: Default
type: KubeVirt
secretEncryption:
aescbc:
activeKey:
name: dt01nc-etcd-encryption-key
type: aescbc
networking:
clusterNetwork: - cidr: 10.132.0.0/14
networkType: OVNKubernetes
serviceNetwork: - cidr: 172.31.0.0/16
clusterID: 766d233a-f8d1-42a8-9416-e62ceaf089cb
pullSecret:
name: pullsecret-cluster-dt01nc
configuration:
oauth:
identityProviders: - htpasswd:
fileData:
name: ocp-admin-htpasswd
mappingMethod: claim
name: local
type: HTPasswd - mappingMethod: add
name: Level-2
openID:
claims:
email: - email
name: - name
preferredUsername: - preferred_username
clientID: b49b406d-bcdf-4b00-ba86-d1d11d9883f6
clientSecret:
name: openid-client-secret-dt01nc
extraAuthorizeParameters:
include_granted_scopes: 'true'
response_type: token
extraScopes: - openshift
issuer: 'https://weblogin.med.umich.edu/nidp/oauth/nam'
type: OpenID
capabilities: {}
issuerURL: 'https://kubernetes.default.svc'
sshKey:
name: sshkey-cluster-dt01nc
autoscaling: {}
olmCatalogPlacement: management
services: - service: OAuthServer
servicePublishingStrategy:
type: Route - service: OIDC
servicePublishingStrategy:
type: Route - service: Konnectivity
servicePublishingStrategy:
type: Route - service: Ignition
servicePublishingStrategy:
type: Route - service: APIServer
servicePublishingStrategy:
type: LoadBalancer
save throws an error - spec section removed from hostedcluster.yaml
---> new hostedcluster.yaml (without disappeared spec section)
apiVersion: hypershift.openshift.io/v1beta1
kind: HostedCluster
metadata:
annotations:
create-external-hub-kubeconfig: '2025-08-04T19:02:23Z'
hypershift.openshift.io/HasBeenAvailable: 'true'
hypershift.openshift.io/management-platform: BareMetal
resourceVersion: '140257722'
name: gpu01
uid: efa13c73-1c07-4ab1-bb98-93fa0a751d49
creationTimestamp: '2025-07-07T19:07:25Z'
generation: 5
managedFields:
- apiVersion: hypershift.openshift.io/v1beta1
fieldsType: FieldsV1
fieldsV1:
'f:metadata':
'f:annotations':
.: {}
'f:hypershift.openshift.io/HasBeenAvailable': {}
'f:hypershift.openshift.io/management-platform': {}
'f:finalizers':
.: {}
'v:"hypershift.openshift.io/finalizer"': {}
manager: hypershift-operator-manager
operation: Update
time: '2025-07-07T19:08:22Z' - apiVersion: hypershift.openshift.io/v1beta1
fieldsType: FieldsV1
fieldsV1:
'f:status':
'f:oauthCallbackURLTemplate': {}
'f:kubeconfig': {}
'f:version':
.: {}
'f:availableUpdates': {}
'f:desired':
.: {}
'f:channels':
'v:"candidate-4.20"': {}
'v:"stable-4.19"': {}
'v:"fast-4.19"': {}
'v:"stable-4.18"': {}
.: {}
'v:"fast-4.18"': {}
'v:"candidate-4.19"': {}
'v:"eus-4.18"': {}
'v:"candidate-4.18"': {}
'f:image': {}
'f:url': {}
'f:version': {}
'f:history': {}
'f:observedGeneration': {}
'f:controlPlaneEndpoint':
.: {}
'f:host': {}
'f:port': {}
'f:kubeadminPassword': {}
'f:conditions':
'k: {"type":"InfrastructureReady"}':
{"type":"Degraded"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ExternalDNSReachable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ValidKubeVirtInfraNetworkMTU"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"IgnitionEndpointAvailable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ValidHostedControlPlaneConfiguration"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"Available"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionAvailable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"PlatformCredentialsFound"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
.: {}
'k:':
{"type":"ValidReleaseInfo"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"KubeAPIServerAvailable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ValidConfiguration"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"KubeVirtNodesLiveMigratable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionReleaseAccepted"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ValidReleaseImage"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionSucceeding"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionRetrievedUpdates"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"Progressing"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionProgressing"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ClusterVersionUpgradeable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"EtcdAvailable"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"SupportedHostedCluster"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ValidIDPConfiguration"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ReconciliationActive"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
{"type":"ReconciliationSucceeded"}
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
'k:':
.: {}
'f:lastTransitionTime': {}
'f:message': {}
'f:observedGeneration': {}
'f:reason': {}
'f:status': {}
'f:type': {}
.: {}
'f:payloadArch': {}
'f:ignitionEndpoint': {}
manager: hypershift-operator-manager
operation: Update
subresource: status
time: '2025-08-04T17:48:33Z' - apiVersion: hypershift.openshift.io/v1beta1
fieldsType: FieldsV1
fieldsV1:
'f:metadata':
'f:annotations':
'f:create-external-hub-kubeconfig': {}
manager: hypershift-addon
operation: Update
time: '2025-08-04T19:02:23Z'
namespace: clusters
finalizers: - hypershift.openshift.io/finalizer
status:
NOTE: hosted-cluster is still running but is not manageable and no one can log in to the cluster