The following PR https://github.com/openshift/origin/pull/22696 introduced an e2e which is verifying that all the operators provide descriptive information as part of their schema which is then available through oc explain command. Your component has a few missing bits, see the commented out lines from the PR. This should be fixed similarly to https://github.com/openshift/cluster-version-operator/pull/168 and then update origin's e2e test and uncomment the lines from your components.
The MCO has types that rely on external repositories that we don't control (like ignition). We can't support that _now_ till we figure something out. Some types are being moved as we speak though e.g. https://github.com/openshift/api/pull/301
This is not 4.1 blocker, but it needs to be fixed as part of 4.1.x since this is important element of documentation.
We still have a PR in openshift/api opened, moving this to 4.2 where it better fits (unlikely to focus on this for 4.1.z)
Tracking upstream issue https://github.com/openshift/machine-config-operator/issues/930 (work started already, it'll hopefully make 4.2 or 4.2.z at most)
Moving to 4.2.z as we're not yet done with the Ignition move out of the MC (or move to RawExtension)
as per previous comment, I'm setting this BZ to 4.3
See https://github.com/openshift/cluster-kube-controller-manager-operator/pull/302 for how you should now be using vendored openshift/api's CRDs.
Relevant spot: https://github.com/openshift/origin/blob/35fa3e3ffc066a52a0bf1babdd1b1a8977bfdc43/test/extended/cli/explain.go#L97
The remaining one based on some chats with Clayton for MCO are: - controllerconfigs - containerruntimeconfigs - kubeletconfigs - machineconfigpools Everything else should be set and done at this point.
*** Bug 1802461 has been marked as a duplicate of this bug. ***
Fixed in https://github.com/openshift/machine-config-operator/pull/1485
*** Bug 1809389 has been marked as a duplicate of this bug. ***
$ for i in containerruntimeconfigs controllerconfigs kubeletconfigs machineconfigpools machineconfigs; do ./oc explain ${i}; done KIND: ContainerRuntimeConfig VERSION: machineconfiguration.openshift.io/v1 DESCRIPTION: ContainerRuntimeConfig describes a customized Container Runtime configuration. FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources kind <string> Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds metadata <Object> Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata spec <Object> ContainerRuntimeConfigSpec defines the desired state of ContainerRuntimeConfig status <Object> ContainerRuntimeConfigStatus defines the observed state of a ContainerRuntimeConfig KIND: ControllerConfig VERSION: machineconfiguration.openshift.io/v1 DESCRIPTION: ControllerConfig describes configuration for MachineConfigController. This is currently only used to drive the MachineConfig objects generated by the TemplateController. FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources kind <string> Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds metadata <Object> Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata spec <Object> ControllerConfigSpec is the spec for ControllerConfig resource. status <Object> ControllerConfigStatus is the status for ControllerConfig KIND: KubeletConfig VERSION: machineconfiguration.openshift.io/v1 DESCRIPTION: KubeletConfig describes a customized Kubelet configuration. FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources kind <string> Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds metadata <Object> Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata spec <Object> KubeletConfigSpec defines the desired state of KubeletConfig status <Object> KubeletConfigStatus defines the observed state of a KubeletConfig KIND: MachineConfigPool VERSION: machineconfiguration.openshift.io/v1 DESCRIPTION: MachineConfigPool describes a pool of MachineConfigs. FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources kind <string> Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds metadata <Object> Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata spec <Object> MachineConfigPoolSpec is the spec for MachineConfigPool resource. status <Object> MachineConfigPoolStatus is the status for MachineConfigPool resource. KIND: MachineConfig VERSION: machineconfiguration.openshift.io/v1 DESCRIPTION: MachineConfig defines the configuration for a machine FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources kind <string> Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds metadata <Object> Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata spec <Object> MachineConfigSpec is the spec for MachineConfig ./oc get clusterversion NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.5.0-0.nightly-2020-03-12-003015 True False 9h Cluster version is 4.5.0-0.nightly-2020-03-12-003015 $ ./oc version Client Version: openshift-clients-4.5.0-202003100316 Server Version: 4.5.0-0.nightly-2020-03-12-003015 Kubernetes Version: v1.17.1
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:2409