Skip to content

Commit

Permalink
Merge pull request #8972 from rook/mergify/bp/release-1.7/pr-8966
Browse files Browse the repository at this point in the history
ceph: remove default value for pool compression (backport #8966)
  • Loading branch information
mergify[bot] committed Oct 13, 2021
2 parents f39f257 + 6647895 commit 3088a6d
Show file tree
Hide file tree
Showing 8 changed files with 165 additions and 146 deletions.
21 changes: 7 additions & 14 deletions cluster/charts/rook-ceph/templates/resources.yaml
Expand Up @@ -34,8 +34,7 @@ spec:
description: PoolSpec represents the spec of ceph pool
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -4458,8 +4457,7 @@ spec:
description: PoolSpec represents the spec of ceph pool
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -4626,8 +4624,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -6387,8 +6384,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7326,8 +7322,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7822,8 +7817,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7988,8 +7982,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down
21 changes: 7 additions & 14 deletions cluster/examples/kubernetes/ceph/crds.yaml
Expand Up @@ -36,8 +36,7 @@ spec:
description: PoolSpec represents the spec of ceph pool
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -4456,8 +4455,7 @@ spec:
description: PoolSpec represents the spec of ceph pool
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -4624,8 +4622,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -6382,8 +6379,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7321,8 +7317,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7814,8 +7809,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down Expand Up @@ -7980,8 +7974,7 @@ spec:
nullable: true
properties:
compressionMode:
default: none
description: 'The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)'
description: 'DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force" The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force) Do NOT set a default value for kubebuilder as this will override the Parameters'
enum:
- none
- passive
Expand Down
3 changes: 2 additions & 1 deletion pkg/apis/ceph.rook.io/v1/types.go
Expand Up @@ -602,9 +602,10 @@ type PoolSpec struct {
// +nullable
DeviceClass string `json:"deviceClass,omitempty"`

// DEPRECATED: use Parameters instead, e.g., Parameters["compression_mode"] = "force"
// The inline compression mode in Bluestore OSD to set to (options are: none, passive, aggressive, force)
// +kubebuilder:validation:Enum=none;passive;aggressive;force;""
// +kubebuilder:default=none
// Do NOT set a default value for kubebuilder as this will override the Parameters
// +optional
// +nullable
CompressionMode string `json:"compressionMode,omitempty"`
Expand Down
4 changes: 2 additions & 2 deletions pkg/daemon/ceph/client/pool.go
Expand Up @@ -34,7 +34,7 @@ const (
confirmFlag = "--yes-i-really-mean-it"
reallyConfirmFlag = "--yes-i-really-really-mean-it"
targetSizeRatioProperty = "target_size_ratio"
compressionModeProperty = "compression_mode"
CompressionModeProperty = "compression_mode"
PgAutoscaleModeProperty = "pg_autoscale_mode"
PgAutoscaleModeOn = "on"
)
Expand Down Expand Up @@ -252,7 +252,7 @@ func setCommonPoolProperties(context *clusterd.Context, clusterInfo *ClusterInfo
}

if pool.IsCompressionEnabled() {
pool.Parameters[compressionModeProperty] = pool.CompressionMode
pool.Parameters[CompressionModeProperty] = pool.CompressionMode
}

// Apply properties
Expand Down
18 changes: 13 additions & 5 deletions pkg/operator/ceph/pool/validate.go
Expand Up @@ -139,11 +139,19 @@ func ValidatePoolSpec(context *clusterd.Context, clusterInfo *cephclient.Cluster

// validate pool compression mode if specified
if p.CompressionMode != "" {
switch p.CompressionMode {
case "none", "passive", "aggressive", "force":
break
default:
return errors.Errorf("unrecognized compression mode %q", p.CompressionMode)
logger.Warning("compressionMode is DEPRECATED, use Parameters instead")
}

// Test the same for Parameters
if p.Parameters != nil {
compression, ok := p.Parameters[client.CompressionModeProperty]
if ok && compression != "" {
switch compression {
case "none", "passive", "aggressive", "force":
break
default:
return errors.Errorf("failed to validate pool spec unknown compression mode %q", compression)
}
}
}

Expand Down

0 comments on commit 3088a6d

Please sign in to comment.