Skip to content

Commit

Permalink
Merge pull request #2032 from bertinatto/move-csi-crds
Browse files Browse the repository at this point in the history
NO-JIRA: move storage CRDs to openshift/api
  • Loading branch information
openshift-merge-bot[bot] authored Sep 19, 2024
2 parents 8f6ded4 + de692e9 commit 2669d1e
Show file tree
Hide file tree
Showing 3 changed files with 668 additions and 0 deletions.
2 changes: 2 additions & 0 deletions hack/update-payload-crds.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ crd_globs="\
machineconfiguration/v1alpha1/zz_generated.crd-manifests/*.crd.yaml
operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations*.crd.yaml
config/v1alpha1/zz_generated.crd-manifests/0000_10_config-operator_01_clusterimagepolicies*.crd.yaml
operator/v1/zz_generated.crd-manifests/0000_50_storage_01_storages*.crd.yaml
operator/v1/zz_generated.crd-manifests/0000_90_csi-driver_01_clustercsidrivers*.crd.yaml
"

# To allow the crd_globs to be sourced in the verify script,
Expand Down
199 changes: 199 additions & 0 deletions payload-manifests/crds/0000_50_storage_01_storages.crd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,199 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
api-approved.openshift.io: https://github.com/openshift/api/pull/670
api.openshift.io/merged-by-featuregates: "true"
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
name: storages.operator.openshift.io
spec:
group: operator.openshift.io
names:
kind: Storage
listKind: StorageList
plural: storages
singular: storage
scope: Cluster
versions:
- name: v1
schema:
openAPIV3Schema:
description: "Storage provides a means to configure an operator to manage
the cluster storage operator. `cluster` is the canonical name. \n Compatibility
level 1: Stable within a major release for a minimum of 12 months or 3 minor
releases (whichever is longer)."
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: spec holds user settable values for configuration
properties:
logLevel:
default: Normal
description: "logLevel is an intent based logging for an overall component.
\ It does not give fine grained control, but it is a simple way
to manage coarse grained logging choices that operators have to
interpret for their operands. \n Valid values are: \"Normal\", \"Debug\",
\"Trace\", \"TraceAll\". Defaults to \"Normal\"."
enum:
- ""
- Normal
- Debug
- Trace
- TraceAll
type: string
managementState:
description: managementState indicates whether and how the operator
should manage the component
pattern: ^(Managed|Unmanaged|Force|Removed)$
type: string
observedConfig:
description: observedConfig holds a sparse config that controller
has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
nullable: true
type: object
x-kubernetes-preserve-unknown-fields: true
operatorLogLevel:
default: Normal
description: "operatorLogLevel is an intent based logging for the
operator itself. It does not give fine grained control, but it
is a simple way to manage coarse grained logging choices that operators
have to interpret for themselves. \n Valid values are: \"Normal\",
\"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"."
enum:
- ""
- Normal
- Debug
- Trace
- TraceAll
type: string
unsupportedConfigOverrides:
description: unsupportedConfigOverrides overrides the final configuration
that was computed by the operator. Red Hat does not support the
use of this field. Misuse of this field could lead to unexpected
behavior or conflict with other configuration options. Seek guidance
from the Red Hat support before using this field. Use of this property
blocks cluster upgrades, it must be removed before upgrading your
cluster.
nullable: true
type: object
x-kubernetes-preserve-unknown-fields: true
vsphereStorageDriver:
description: 'VSphereStorageDriver indicates the storage driver to
use on VSphere clusters. Once this field is set to CSIWithMigrationDriver,
it can not be changed. If this is empty, the platform will choose
a good default, which may change over time without notice. The current
default is CSIWithMigrationDriver and may not be changed. DEPRECATED:
This field will be removed in a future release.'
enum:
- ""
- LegacyDeprecatedInTreeDriver
- CSIWithMigrationDriver
type: string
x-kubernetes-validations:
- message: VSphereStorageDriver can not be set to LegacyDeprecatedInTreeDriver
rule: self != "LegacyDeprecatedInTreeDriver"
type: object
status:
description: status holds observed values from the cluster. They may not
be overridden.
properties:
conditions:
description: conditions is a list of conditions and their status
items:
description: OperatorCondition is just the standard condition fields.
properties:
lastTransitionTime:
format: date-time
type: string
message:
type: string
reason:
type: string
status:
type: string
type:
type: string
required:
- type
type: object
type: array
x-kubernetes-list-map-keys:
- type
x-kubernetes-list-type: map
generations:
description: generations are used to determine when an item needs
to be reconciled or has changed in a way that needs a reaction.
items:
description: GenerationStatus keeps track of the generation for
a given resource so that decisions about forced updates can be
made.
properties:
group:
description: group is the group of the thing you're tracking
type: string
hash:
description: hash is an optional field set for resources without
generation that are content sensitive like secrets and configmaps
type: string
lastGeneration:
description: lastGeneration is the last generation of the workload
controller involved
format: int64
type: integer
name:
description: name is the name of the thing you're tracking
type: string
namespace:
description: namespace is where the thing you're tracking is
type: string
resource:
description: resource is the resource type of the thing you're
tracking
type: string
required:
- group
- name
- namespace
- resource
type: object
type: array
x-kubernetes-list-map-keys:
- group
- resource
- namespace
- name
x-kubernetes-list-type: map
observedGeneration:
description: observedGeneration is the last generation change you've
dealt with
format: int64
type: integer
readyReplicas:
description: readyReplicas indicates how many replicas are ready and
at the desired state
format: int32
type: integer
version:
description: version is the level this availability applies to
type: string
type: object
required:
- spec
type: object
served: true
storage: true
subresources:
status: {}
Loading

0 comments on commit 2669d1e

Please sign in to comment.