Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cmd/machine-config-operator/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ func runStartCmd(cmd *cobra.Command, args []string) {
ctrlctx.NamespacedInformerFactory.Machineconfiguration().V1().MachineConfigs(),
ctrlctx.NamespacedInformerFactory.Machineconfiguration().V1().ControllerConfigs(),
ctrlctx.KubeNamespacedInformerFactory.Core().V1().ServiceAccounts(),
ctrlctx.APIExtInformerFactory.Apiextensions().V1beta1().CustomResourceDefinitions(),
ctrlctx.APIExtInformerFactory.Apiextensions().V1().CustomResourceDefinitions(),
ctrlctx.KubeNamespacedInformerFactory.Apps().V1().Deployments(),
ctrlctx.KubeNamespacedInformerFactory.Apps().V1().DaemonSets(),
ctrlctx.KubeNamespacedInformerFactory.Rbac().V1().ClusterRoles(),
Expand Down
2 changes: 1 addition & 1 deletion docs/ContainerRuntimeConfigDesign.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Extend the Machine Config Operator to include a ContainerRuntimeConfig CRD and C
## CRD

```
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: containerruntimeconfigs.machineconfiguration.openshift.io
Expand Down
2 changes: 1 addition & 1 deletion docs/KubeletConfigDesign.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Extend the Machine Config Operator to include a KubetletConfig CRD and KubeletCo
## CRD

```
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: kubeletconfigs.machineconfiguration.openshift.io
Expand Down
2 changes: 1 addition & 1 deletion examples/controllerconfig.crd.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
# name must match the spec fields below, and be in the form: <plural>.<group>
Expand Down
2 changes: 1 addition & 1 deletion examples/machineconfig.crd.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
# name must match the spec fields below, and be in the form: <plural>.<group>
Expand Down
2 changes: 1 addition & 1 deletion examples/machineconfigpool.crd.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
# name must match the spec fields below, and be in the form: <plural>.<group>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: apiextensions.k8s.io/v1beta1
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: containerruntimeconfigs.machineconfiguration.openshift.io
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do we have this in openshift/api ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same question as for those below. All *.openshift.io APIs belong into that repo. Otherwise, we are unable to do cross-component API tasks in a consistent way and have no API review either.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't think so. Doing quick grep of "containerruntimeconfigs" in openshift/api repo gives no result.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree and while working on this PR I was thinking of doing a spike in 4.9 and work on moving MCO APIs to openshift/api repo.

Expand All @@ -18,154 +18,153 @@ spec:
shortNames:
- ctrcfg
scope: Cluster
preserveUnknownFields: false
subresources:
status: {}
versions:
- name: v1
served: true
storage: true
"validation":
"openAPIV3Schema":
description: ContainerRuntimeConfig describes a customized Container Runtime
configuration.
type: object
required:
- spec
properties:
apiVersion:
description: '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'
type: string
kind:
description: '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'
type: string
metadata:
type: object
spec:
description: ContainerRuntimeConfigSpec defines the desired state of ContainerRuntimeConfig
type: object
required:
subresources:
status: {}
schema:
openAPIV3Schema:
description: ContainerRuntimeConfig describes a customized Container Runtime
configuration.
type: object
required:
- spec
properties:
apiVersion:
description: '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'
type: string
kind:
description: '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'
type: string
metadata:
type: object
spec:
description: ContainerRuntimeConfigSpec defines the desired state of ContainerRuntimeConfig
type: object
required:
- containerRuntimeConfig
properties:
containerRuntimeConfig:
description: ContainerRuntimeConfiguration defines the tuneables of
the container runtime. It's important to note that, since the fields
of the ContainerRuntimeConfiguration are directly read by the
upstream kubernetes golang client, the validation of those values
is handled directly by that golang client which is outside of the
controller for ContainerRuntimeConfiguration. Please ensure
the valid values are used for those fields as invalid values
may render cluster nodes unusable.
type: object
properties:
logLevel:
description: logLevel specifies the verbosity of the logs based
on the level it is set to. Options are fatal, panic, error, warn,
info, and debug.
type: string
logSizeMax:
description: logSizeMax specifies the Maximum size allowed for the
container log file. Negative numbers indicate that no size limit
is imposed. If it is positive, it must be >= 8192 to match/exceed
conmon's read buffer.
type: string
overlaySize:
description: 'overlaySize specifies the maximum size of a container
image. This flag can be used to set quota on the size of container
images. (default: 10GB)'
type: string
pidsLimit:
description: pidsLimit specifies the maximum number of processes
allowed in a container
type: integer
format: int64
machineConfigPoolSelector:
description: A label selector is a label query over a set of resources.
The result of matchLabels and matchExpressions are ANDed. An empty
label selector matches all objects. A null label selector matches
no objects.
type: object
properties:
matchExpressions:
description: matchExpressions is a list of label selector requirements.
The requirements are ANDed.
type: array
items:
description: A label selector requirement is a selector that contains
values, a key, and an operator that relates the key and values.
type: object
required:
- key
- operator
properties:
key:
description: key is the label key that the selector applies
to.
type: string
operator:
description: operator represents a key's relationship to a
set of values. Valid operators are In, NotIn, Exists and
DoesNotExist.
type: string
values:
description: values is an array of string values. If the operator
is In or NotIn, the values array must be non-empty. If the
operator is Exists or DoesNotExist, the values array must
be empty. This array is replaced during a strategic merge
patch.
type: array
items:
type: string
matchLabels:
description: matchLabels is a map of {key,value} pairs. A single
{key,value} in the matchLabels map is equivalent to an element
of matchExpressions, whose key field is "key", the operator is
"In", and the values array contains only "value". The requirements
are ANDed.
type: object
additionalProperties:
type: string
status:
description: ContainerRuntimeConfigStatus defines the observed state of
a ContainerRuntimeConfig
type: object
properties:
conditions:
description: conditions represents the latest available observations
of current state.
type: array
items:
description: ContainerRuntimeConfigCondition defines the state of
the ContainerRuntimeConfig
properties:
containerRuntimeConfig:
description: ContainerRuntimeConfiguration defines the tuneables of
the container runtime. It's important to note that, since the fields
of the ContainerRuntimeConfiguration are directly read by the upstream
kubernetes golang client, the validation of those values is handled
directly by that golang client which is outside of the controller
for ContainerRuntimeConfiguration. Please ensure the valid values
are used for those fields as invalid values may render cluster nodes
unusable.
type: object
properties:
lastTransitionTime:
description: lastTransitionTime is the time of the last update
to the current status object.
type: string
format: date-time
nullable: true
message:
description: message provides additional information about the
current condition. This is only to be consumed by humans.
type: string
reason:
description: reason is the reason for the condition's last transition. Reasons
are PascalCase
logLevel:
description: logLevel specifies the verbosity of the logs based
on the level it is set to. Options are fatal, panic, error, warn,
info, and debug.
type: string
status:
description: status of the condition, one of True, False, Unknown.
logSizeMax:
description: logSizeMax specifies the Maximum size allowed for the
container log file. Negative numbers indicate that no size limit
is imposed. If it is positive, it must be >= 8192 to match/exceed
conmon's read buffer.
type: string
type:
description: type specifies the state of the operator's reconciliation
functionality.
overlaySize:
description: 'overlaySize specifies the maximum size of a container
image. This flag can be used to set quota on the size of container
images. (default: 10GB)'
type: string
observedGeneration:
description: observedGeneration represents the generation observed by
the controller.
type: integer
format: int64
pidsLimit:
description: pidsLimit specifies the maximum number of processes
allowed in a container
type: integer
format: int64
machineConfigPoolSelector:
description: A label selector is a label query over a set of resources.
The result of matchLabels and matchExpressions are ANDed. An empty
label selector matches all objects. A null label selector matches
no objects.
type: object
properties:
matchExpressions:
description: matchExpressions is a list of label selector requirements.
The requirements are ANDed.
type: array
items:
description: A label selector requirement is a selector that contains
values, a key, and an operator that relates the key and values.
type: object
required:
- key
- operator
properties:
key:
description: key is the label key that the selector applies
to.
type: string
operator:
description: operator represents a key's relationship to a
set of values. Valid operators are In, NotIn, Exists and
DoesNotExist.
type: string
values:
description: values is an array of string values. If the operator
is In or NotIn, the values array must be non-empty. If the
operator is Exists or DoesNotExist, the values array must
be empty. This array is replaced during a strategic merge
patch.
type: array
items:
type: string
matchLabels:
description: matchLabels is a map of {key,value} pairs. A single
{key,value} in the matchLabels map is equivalent to an element
of matchExpressions, whose key field is "key", the operator is
"In", and the values array contains only "value". The requirements
are ANDed.
type: object
additionalProperties:
type: string
status:
description: ContainerRuntimeConfigStatus defines the observed state of
a ContainerRuntimeConfig
type: object
properties:
conditions:
description: conditions represents the latest available observations
of current state.
type: array
items:
description: ContainerRuntimeConfigCondition defines the state of
the ContainerRuntimeConfig
type: object
properties:
lastTransitionTime:
description: lastTransitionTime is the time of the last update
to the current status object.
type: string
format: date-time
nullable: true
message:
description: message provides additional information about the
current condition. This is only to be consumed by humans.
type: string
reason:
description: reason is the reason for the condition's last transition. Reasons
are PascalCase
type: string
status:
description: status of the condition, one of True, False, Unknown.
type: string
type:
description: type specifies the state of the operator's reconciliation
functionality.
type: string
observedGeneration:
description: observedGeneration represents the generation observed by
the controller.
type: integer
format: int64
Loading