Skip to main content

ControllerConfig [machineconfiguration.openshift.io/v1]

Description
ControllerConfig describes configuration for MachineConfigController. This is currently only used to drive the MachineConfig objects generated by the TemplateController. Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Type
`object`
Required
  • spec

Specification​

PropertyTypeDescription
apiVersionstringAPIVersion 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
kindstringKind 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
metadataObjectMetaStandard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
specobjectspec contains the desired controller config configuration.
statusobjectstatus contains observed information about the controller config.

.spec​

Description
spec contains the desired controller config configuration.
Type
`object`
Required
  • baseOSContainerImage
  • cloudProviderConfig
  • clusterDNSIP
  • images
  • ipFamilies
  • kubeAPIServerServingCAData
  • releaseImage
  • rootCAData
PropertyTypeDescription
additionalTrustBundle``additionalTrustBundle is a certificate bundle that will be added to the nodes trusted certificate store.
baseOSContainerImagestringbaseOSContainerImage is the new-format container image for operating system updates.
baseOSExtensionsContainerImagestringbaseOSExtensionsContainerImage is the matching extensions container for the new-format container
cloudProviderCAData``cloudProviderCAData specifies the cloud provider CA data
cloudProviderConfigstringcloudProviderConfig is the configuration for the given cloud provider
clusterDNSIPstringclusterDNSIP is the cluster DNS IP address
dnsobjectdns holds the cluster dns details
etcdDiscoveryDomainstringetcdDiscoveryDomain is deprecated, use Infra.Status.EtcdDiscoveryDomain instead
imageRegistryBundleDataarrayimageRegistryBundleData is the ImageRegistryData
imageRegistryBundleData[]objectImageRegistryBundle contains information for writing image registry certificates
imageRegistryBundleUserDataarrayimageRegistryBundleUserData is Image Registry Data provided by the user
imageRegistryBundleUserData[]objectImageRegistryBundle contains information for writing image registry certificates
imagesobject (string)images is map of images that are used by the controller to render templates under ./templates/
infraobjectinfra holds the infrastructure details
internalRegistryPullSecret``internalRegistryPullSecret is the pull secret for the internal registry, used by rpm-ostree to pull images from the internal registry if present
ipFamiliesstringipFamilies indicates the IP families in use by the cluster network
kubeAPIServerServingCADatastringkubeAPIServerServingCAData managed Kubelet to API Server Cert... Rotated automatically
network``network contains additional network related information
networkTypestringnetworkType holds the type of network the cluster is using XXX: this is temporary and will be dropped as soon as possible in favor of a better support to start network related services the proper way. Nobody is also changing this once the cluster is up and running the first time, so, disallow regeneration if this changes.
osImageURLstringosImageURL is the old-format container image that contains the OS update payload.
platformstringplatform is deprecated, use Infra.Status.PlatformStatus.Type instead
proxy``proxy holds the current proxy configuration for the nodes
pullSecretobjectpullSecret is the default pull secret that needs to be installed on all machines.
releaseImagestringreleaseImage is the image used when installing the cluster
rootCADatastringrootCAData specifies the root CA data

.spec.dns​

Description
dns holds the cluster dns details
Type
`object`
Required
  • spec
  • kind
  • apiVersion
PropertyTypeDescription
apiVersionstringapiVersion defines the versioned schema of this representation of an object. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kindstringkind is a string value representing the type of this object. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadataObjectMetaStandard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

.spec.imageRegistryBundleData​

Description
imageRegistryBundleData is the ImageRegistryData
Type
`array`

.spec.imageRegistryBundleData[]​

Description
ImageRegistryBundle contains information for writing image registry certificates
Type
`object`
Required
  • data
  • file
PropertyTypeDescription
datastringdata holds the contents of the bundle that will be written to the file location
filestringfile holds the name of the file where the bundle will be written to disk

.spec.imageRegistryBundleUserData​

Description
imageRegistryBundleUserData is Image Registry Data provided by the user
Type
`array`

.spec.imageRegistryBundleUserData[]​

Description
ImageRegistryBundle contains information for writing image registry certificates
Type
`object`
Required
  • data
  • file
PropertyTypeDescription
datastringdata holds the contents of the bundle that will be written to the file location
filestringfile holds the name of the file where the bundle will be written to disk

.spec.infra​

Description
infra holds the infrastructure details
Type
`object`
Required
  • spec
  • kind
  • apiVersion
PropertyTypeDescription
apiVersionstringapiVersion defines the versioned schema of this representation of an object. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kindstringkind is a string value representing the type of this object. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadataObjectMetaStandard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

.spec.pullSecret​

Description
pullSecret is the default pull secret that needs to be installed on all machines.
Type
`object`
PropertyTypeDescription
apiVersionstringAPI version of the referent.
fieldPathstringIf referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.
kindstringKind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
namestringName of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
namespacestringNamespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
resourceVersionstringSpecific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
uidstringUID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

.status​

Description
status contains observed information about the controller config.
Type
`object`
PropertyTypeDescription
conditionsarrayconditions represents the latest available observations of current state.
conditions[]objectControllerConfigStatusCondition contains condition information for ControllerConfigStatus
controllerCertificatesarraycontrollerCertificates represents the latest available observations of the automatically rotating certificates in the MCO.
controllerCertificates[]objectControllerCertificate contains info about a specific cert.
observedGenerationintegerobservedGeneration represents the generation observed by the controller.

.status.conditions​

Description
conditions represents the latest available observations of current state.
Type
`array`

.status.conditions[]​

Description
ControllerConfigStatusCondition contains condition information for ControllerConfigStatus
Type
`object`
Required
  • status
  • type
PropertyTypeDescription
lastTransitionTime``lastTransitionTime is the time of the last update to the current status object.
messagestringmessage provides additional information about the current condition. This is only to be consumed by humans.
reasonstringreason is the reason for the condition’s last transition. Reasons are PascalCase
statusstringstatus of the condition, one of True, False, Unknown.
typestringtype specifies the state of the operator’s reconciliation functionality.

.status.controllerCertificates​

Description
controllerCertificates represents the latest available observations of the automatically rotating certificates in the MCO.
Type
`array`

.status.controllerCertificates[]​

Description
ControllerCertificate contains info about a specific cert.
Type
`object`
Required
  • bundleFile
  • signer
  • subject
PropertyTypeDescription
bundleFilestringbundleFile is the larger bundle a cert comes from
notAfterstringnotAfter is the upper boundary for validity
notBeforestringnotBefore is the lower boundary for validity
signerstringsigner is the cert Issuer
subjectstringsubject is the cert subject

API endpoints​

The following API endpoints are available:

  • /apis/machineconfiguration.openshift.io/v1/controllerconfigs
    • DELETE: delete collection of ControllerConfig
    • GET: list objects of kind ControllerConfig
    • POST: create a ControllerConfig
  • /apis/machineconfiguration.openshift.io/v1/controllerconfigs/{name}
    • DELETE: delete a ControllerConfig
    • GET: read the specified ControllerConfig
    • PATCH: partially update the specified ControllerConfig
    • PUT: replace the specified ControllerConfig
  • /apis/machineconfiguration.openshift.io/v1/controllerconfigs/{name}/status
    • GET: read status of the specified ControllerConfig
    • PATCH: partially update status of the specified ControllerConfig
    • PUT: replace status of the specified ControllerConfig

/apis/machineconfiguration.openshift.io/v1/controllerconfigs​

HTTP method
`DELETE`
Description
delete collection of ControllerConfig

HTTP responses

HTTP codeReponse body
200 - OKStatus schema
401 - UnauthorizedEmpty
HTTP method
`GET`
Description
list objects of kind ControllerConfig

HTTP responses

HTTP codeReponse body
200 - OKControllerConfigList schema
401 - UnauthorizedEmpty
HTTP method
`POST`
Description
create a ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.

Body parameters

ParameterTypeDescription
bodyControllerConfig schema

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
201 - CreatedControllerConfig schema
202 - AcceptedControllerConfig schema
401 - UnauthorizedEmpty

/apis/machineconfiguration.openshift.io/v1/controllerconfigs/{name}​

Global path parameters

ParameterTypeDescription
namestringname of the ControllerConfig
HTTP method
`DELETE`
Description
delete a ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed

HTTP responses

HTTP codeReponse body
200 - OKStatus schema
202 - AcceptedStatus schema
401 - UnauthorizedEmpty
HTTP method
`GET`
Description
read the specified ControllerConfig

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
401 - UnauthorizedEmpty
HTTP method
`PATCH`
Description
partially update the specified ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
401 - UnauthorizedEmpty
HTTP method
`PUT`
Description
replace the specified ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.

Body parameters

ParameterTypeDescription
bodyControllerConfig schema

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
201 - CreatedControllerConfig schema
401 - UnauthorizedEmpty

/apis/machineconfiguration.openshift.io/v1/controllerconfigs/{name}/status​

Global path parameters

ParameterTypeDescription
namestringname of the ControllerConfig
HTTP method
`GET`
Description
read status of the specified ControllerConfig

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
401 - UnauthorizedEmpty
HTTP method
`PATCH`
Description
partially update status of the specified ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
401 - UnauthorizedEmpty
HTTP method
`PUT`
Description
replace status of the specified ControllerConfig

Query parameters

ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.

Body parameters

ParameterTypeDescription
bodyControllerConfig schema

HTTP responses

HTTP codeReponse body
200 - OKControllerConfig schema
201 - CreatedControllerConfig schema
401 - UnauthorizedEmpty