Skip to content
Open
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
97 changes: 85 additions & 12 deletions assets/components/lvms/lvm.topolvm.io_lvmclusters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.17.3
controller-gen.kubebuilder.io/version: v0.20.1
creationTimestamp: null
name: lvmclusters.lvm.topolvm.io
spec:
Expand Down Expand Up @@ -58,6 +58,16 @@ spec:
class is the default. You can configure only a single
default device class.
type: boolean
deviceDiscoveryPolicy:
description: |-
DeviceDiscoveryPolicy specifies the policy for discovering devices for this device class.
Static means the volume group is created with devices found at install time; new devices are ignored.
Dynamic means devices are continuously discovered and added to the volume group.
When not set, new volume groups default to Static and existing volume groups default to Dynamic for backward compatibility.
enum:
- Static
- Dynamic
type: string
deviceSelector:
description: DeviceSelector contains the configuration to
specify paths to the devices that you want to add to the
Expand All @@ -70,13 +80,19 @@ spec:
Force wipe the devices only when you know that they do not contain any important data.
type: boolean
optionalPaths:
description: OptionalPaths specify the optional device
paths.
description: |-
OptionalPaths is a list of device paths. At least one path must resolve on each node.
Prefer stable, consistent paths such as /dev/disk/by-id/… instead of
/dev/sda, which may be renamed or reordered by the kernel on reboot.
This can be used to provide a single list of disk IDs across multiple nodes.
items:
type: string
type: array
paths:
description: Paths specify the device paths.
description: |-
Paths is a list of device paths. All paths must resolve on each node.
Prefer stable, consistent paths such as /dev/disk/by-id/… instead of
/dev/sda, which may be renamed or reordered by the kernel on reboot.
items:
type: string
type: array
Expand All @@ -90,8 +106,10 @@ spec:
enum:
- xfs
- ext4
- ""
type: string
x-kubernetes-validations:
- message: fstype is immutable
rule: oldSelf == self
name:
description: Name specifies a name for the device class
maxLength: 245
Expand Down Expand Up @@ -189,6 +207,55 @@ spec:
- nodeSelectorTerms
type: object
x-kubernetes-map-type: atomic
storageClassOptions:
description: StorageClassOptions allows customization of
the StorageClass created for this device class.
properties:
additionalLabels:
additionalProperties:
type: string
description: |-
AdditionalLabels sets additional labels on the StorageClass.
This is the only StorageClassOptions field that can be changed after creation.
maxProperties: 16
type: object
additionalParameters:
additionalProperties:
type: string
default: {}
description: |-
AdditionalParameters sets additional parameters on the StorageClass.
LVMS-owned keys (topolvm.io/device-class, csi.storage.k8s.io/fstype) cannot be overridden.
This field is immutable after creation.
maxProperties: 16
type: object
x-kubernetes-validations:
- message: additionalParameters is immutable once set
rule: oldSelf == self
reclaimPolicy:
default: Delete
description: |-
ReclaimPolicy sets the reclaim policy for PVs provisioned by this device class.
When set to Retain, PVs and their underlying logical volumes are preserved when PVCs are deleted.
enum:
- Delete
- Retain
type: string
x-kubernetes-validations:
- message: reclaimPolicy is immutable once set
rule: oldSelf == self
volumeBindingMode:
default: WaitForFirstConsumer
description: VolumeBindingMode sets the binding mode
for PVs provisioned by this device class.
enum:
- WaitForFirstConsumer
- Immediate
type: string
x-kubernetes-validations:
- message: volumeBindingMode is immutable once set
rule: oldSelf == self
type: object
thinPoolConfig:
description: ThinPoolConfig contains the configuration to
create a thin pool in the LVM volume group. If you exclude
Expand Down Expand Up @@ -260,8 +327,13 @@ spec:
- name
- overprovisionRatio
type: object
required:
- name
type: object
type: array
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
type: object
tolerations:
description: Tolerations to apply to nodes to act on
Expand All @@ -283,9 +355,10 @@ spec:
operator:
description: |-
Operator represents a key's relationship to the value.
Valid operators are Exists and Equal. Defaults to Equal.
Valid operators are Exists, Equal, Lt, and Gt. Defaults to Equal.
Exists is equivalent to wildcard for value, so that a pod can
tolerate all taints of a particular category.
Lt and Gt perform numeric comparisons (requires feature gate TaintTolerationComparisonOperators).
type: string
tolerationSeconds:
description: |-
Expand Down Expand Up @@ -380,16 +453,16 @@ spec:
deviceclass on the node
properties:
deviceDiscoveryPolicy:
default: RuntimeDynamic
default: RuntimeStatic
description: |-
DeviceDiscoveryPolicy is a field to indicate whether the devices are discovered
at runtime or preconfigured through a DeviceSelector
Setting this to DeviceDiscoveryPolicyPreconfigured indicates the devices are preconfigured through a DeviceSelector.
Setting this to DeviceDiscoveryPolicyRuntimeDynamic indicates the devices are added to the VG dynamically if they are present at runtime.
By default, the value is set to RuntimeDynamic.
DeviceDiscoveryPolicy is a field to indicate the effective device discovery policy for this volume group.
Preconfigured indicates explicit DeviceSelector paths are configured and the discovery policy is not applicable.
RuntimeDynamic indicates devices are discovered and added dynamically at runtime (no explicit paths, Dynamic policy).
RuntimeStatic indicates devices were discovered at install time and new devices are ignored (no explicit paths, Static policy).
enum:
- Preconfigured
- RuntimeDynamic
- RuntimeStatic
type: string
devices:
description: Devices is the list of devices used by the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.17.3
controller-gen.kubebuilder.io/version: v0.20.1
creationTimestamp: null
name: lvmvolumegroupnodestatuses.lvm.topolvm.io
spec:
Expand Down Expand Up @@ -46,16 +46,16 @@ spec:
items:
properties:
deviceDiscoveryPolicy:
default: RuntimeDynamic
default: RuntimeStatic
description: |-
DeviceDiscoveryPolicy is a field to indicate whether the devices are discovered
at runtime or preconfigured through a DeviceSelector
Setting this to DeviceDiscoveryPolicyPreconfigured indicates the devices are preconfigured through a DeviceSelector.
Setting this to DeviceDiscoveryPolicyRuntimeDynamic indicates the devices are added to the VG dynamically if they are present at runtime.
By default, the value is set to RuntimeDynamic.
DeviceDiscoveryPolicy is a field to indicate the effective device discovery policy for this volume group.
Preconfigured indicates explicit DeviceSelector paths are configured and the discovery policy is not applicable.
RuntimeDynamic indicates devices are discovered and added dynamically at runtime (no explicit paths, Dynamic policy).
RuntimeStatic indicates devices were discovered at install time and new devices are ignored (no explicit paths, Static policy).
enum:
- Preconfigured
- RuntimeDynamic
- RuntimeStatic
type: string
devices:
description: Devices is the list of devices used by the volume
Expand Down
23 changes: 20 additions & 3 deletions assets/components/lvms/lvm.topolvm.io_lvmvolumegroups.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.17.3
controller-gen.kubebuilder.io/version: v0.20.1
creationTimestamp: null
name: lvmvolumegroups.lvm.topolvm.io
spec:
Expand Down Expand Up @@ -43,6 +43,16 @@ spec:
description: Default is a flag to indicate whether the device-class
is the default
type: boolean
deviceDiscoveryPolicy:
description: |-
DeviceDiscoveryPolicy specifies the policy for discovering devices for this volume group.
Static means the volume group is created with devices found at install time; new devices are ignored.
Dynamic means devices are continuously discovered and added to the volume group.
When not set, new volume groups default to Static and existing volume groups default to Dynamic for backward compatibility.
enum:
- Static
- Dynamic
type: string
deviceSelector:
description: DeviceSelector is a set of rules that should match for
a device to be included in this TopoLVMCluster
Expand All @@ -54,12 +64,19 @@ spec:
Force wipe the devices only when you know that they do not contain any important data.
type: boolean
optionalPaths:
description: OptionalPaths specify the optional device paths.
description: |-
OptionalPaths is a list of device paths. At least one path must resolve on each node.
Prefer stable, consistent paths such as /dev/disk/by-id/… instead of
/dev/sda, which may be renamed or reordered by the kernel on reboot.
This can be used to provide a single list of disk IDs across multiple nodes.
items:
type: string
type: array
paths:
description: Paths specify the device paths.
description: |-
Paths is a list of device paths. All paths must resolve on each node.
Prefer stable, consistent paths such as /dev/disk/by-id/… instead of
/dev/sda, which may be renamed or reordered by the kernel on reboot.
items:
type: string
type: array
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ rules:
- ""
resources:
- persistentvolumeclaims
- pods
verbs:
- delete
- get
Expand All @@ -56,15 +57,6 @@ rules:
- persistentvolumeclaims/status
verbs:
- patch
- apiGroups:
- ""
resources:
- pods
verbs:
- delete
- get
- list
- watch
- apiGroups:
- apiextensions.k8s.io
resources:
Expand Down Expand Up @@ -92,6 +84,14 @@ rules:
- replicasets
verbs:
- get
- apiGroups:
- config.openshift.io
resources:
- apiservers
verbs:
- get
- list
- watch
- apiGroups:
- config.openshift.io
resources:
Expand All @@ -110,6 +110,14 @@ rules:
- patch
- update
- watch
- apiGroups:
- events.k8s.io
resources:
- events
verbs:
- create
- patch
- update
- apiGroups:
- lvm.topolvm.io
resources:
Expand Down
2 changes: 1 addition & 1 deletion assets/components/lvms/topolvm-configmap_lvms-version.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ metadata:
name: lvms-version
namespace: kube-public
data:
version: v4.21.0
version: v4.22.0
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,14 @@ rules:
- get
- list
- watch
- apiGroups:
- config.openshift.io
resources:
- apiservers
verbs:
- get
- list
- watch
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,14 @@ rules:
- create
- patch
- update
- apiGroups:
- events.k8s.io
resources:
- events
verbs:
- create
- patch
- update
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
Expand Down
2 changes: 1 addition & 1 deletion assets/release/release-aarch64.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"ovn-kubernetes-microshift": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:00d6b32bec2fcf6bed1bc93639e459d36875ba753c467a6c60823c04fbc47137",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:02605b9435f6523d7efeac115df1f3746de887b932aa94e1cc4116bfe14df873",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:5eedca02a6160855583c1b54a9d90c18a5710dad6a79fc112a60d25071d6a224",
"lvms_operator": "registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:e77365e44676fbd8ab9e4ce53f3a406856bbdfef3467c545a7df1197d84477af",
"lvms_operator": "registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:f9de07f9078f5c03a9be4b1ab565b2720524f290042feed56c3ff4c4a29efcc7",
"csi-snapshot-controller": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:32301600bf3465a450379d4455c94698de21aeeb533273f91eb5f663bae1843e"
}
}
2 changes: 1 addition & 1 deletion assets/release/release-x86_64.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"ovn-kubernetes-microshift": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:09d9f01b1211ef44847c2d996cf8b69ec1884346cb98dce185ffa917a5359ec5",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7618427c7b4903b78e9525313904f27b1ed87a3932f0fd6f394bd94043f27e3e",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:4af541b1f5223a9179408829305f509fa9303af30d9cab5b2137b61068770172",
"lvms_operator": "registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:10c9ccab4f2857d113b55e12cac29aed0dc97d5a4e29ed2e4ea0f77551ee55f8",
"lvms_operator": "registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:0b1daf82a941c7483b5f7e0ae4f5b0ffb21f6c9634be5493be20bc13184930ca",
"csi-snapshot-controller": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9aa1ebcace1712d4e0f325d50150b4baf032c0df3110b9124dfe4fc10b77f106"
}
}
2 changes: 1 addition & 1 deletion scripts/auto-rebase/last_rebase_lvms.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
#!/bin/bash -x
./scripts/auto-rebase/rebase_lvms.sh to "registry.redhat.io/lvms4/lvms-operator-bundle:v4.21.0"
./scripts/auto-rebase/rebase_lvms.sh to "registry.redhat.io/lvms4/lvms-operator-bundle:v4.22.0"
2 changes: 1 addition & 1 deletion scripts/auto-rebase/rebase_job_entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ OPM_RELEASE=${opm_release} \
# LVMS is not tracked in the OCP release image. Instead, rely on the
# latest z-stream for a given X.Y version. Only the X.Y needs manual
# updating between releases.
./scripts/auto-rebase/rebase_lvms.sh latest "registry.redhat.io/lvms4/lvms-operator-bundle" "4.21"
./scripts/auto-rebase/rebase_lvms.sh latest "registry.redhat.io/lvms4/lvms-operator-bundle" "4.22"

if [[ "${JOB_TYPE}" == "presubmit" ]]; then
# Verify the assets after the rebase to make sure
Expand Down