@@ -11,20 +11,23 @@ import (
1111// RedisClusterSpec defines the desired state of RedisCluster
1212// +k8s:openapi-gen=true
1313type RedisClusterSpec struct {
14- Size int32 `json:"size,omitempty"`
15- Resources corev1.ResourceRequirements `json:"resources,omitempty"`
16- Image string `json:"image,omitempty"`
17- Command []string `json:"command,omitempty"`
18- ShutdownConfigMap string `json:"shutdownConfigMap,omitempty"`
19- Storage RedisStorage `json:"storage,omitempty"`
20- Password string `json:"password,omitempty"`
21- Exporter RedisExporter `json:"exporter,omitempty"`
22- Affinity * corev1.Affinity `json:"affinity,omitempty"`
23- SecurityContext * corev1.PodSecurityContext `json:"securityContext,omitempty"`
24- ToleRations []corev1.Toleration `json:"toleRations,omitempty"`
25- Config map [string ]string `json:"config,omitempty"`
26- Annotations map [string ]string `json:"annotations,omitempty"`
27- DisablePersistence bool `json:"disablePersistence,omitempty"`
14+ Size int32 `json:"size,omitempty"`
15+ Resources corev1.ResourceRequirements `json:"resources,omitempty"`
16+ Image string `json:"image,omitempty"`
17+ ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
18+ ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
19+ Command []string `json:"command,omitempty"`
20+ ShutdownConfigMap string `json:"shutdownConfigMap,omitempty"`
21+ Storage RedisStorage `json:"storage,omitempty"`
22+ Password string `json:"password,omitempty"`
23+ Exporter RedisExporter `json:"exporter,omitempty"`
24+ Affinity * corev1.Affinity `json:"affinity,omitempty"`
25+ SecurityContext * corev1.PodSecurityContext `json:"securityContext,omitempty"`
26+ ToleRations []corev1.Toleration `json:"toleRations,omitempty"`
27+ NodeSelector map [string ]string `json:"nodeSelector,omitempty"`
28+ Config map [string ]string `json:"config,omitempty"`
29+ Annotations map [string ]string `json:"annotations,omitempty"`
30+ DisablePersistence bool `json:"disablePersistence,omitempty"`
2831
2932 // Sentinel defines its cluster settings
3033 Sentinel SentinelSettings `json:"sentinel,omitempty"`
@@ -55,36 +58,27 @@ func init() {
5558 SchemeBuilder .Register (& RedisCluster {}, & RedisClusterList {})
5659}
5760
58- //// RedisSettings defines the specification of the redis cluster
59- //type RedisSettings struct {
60- // Size int32 `json:"size,omitempty"`
61- // Resources corev1.ResourceRequirements `json:"resources,omitempty"`
62- // Image string `json:"image,omitempty"`
63- // Command []string `json:"command,omitempty"`
64- // ShutdownConfigMap string `json:"shutdownConfigMap,omitempty"`
65- // Storage RedisStorage `json:"storage,omitempty"`
66- // Password string `json:"password,omitempty"`
67- // Exporter RedisExporter `json:"exporter,omitempty"`
68- // Affinity *corev1.Affinity `json:"affinity,omitempty"`
69- // SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
70- //}
71- 7261// RedisExporter defines the specification for the redis exporter
7362type RedisExporter struct {
74- Enabled bool `json:"enabled,omitempty"`
75- Image string `json:"image,omitempty"`
63+ Enabled bool `json:"enabled,omitempty"`
64+ Image string `json:"image,omitempty"`
65+ ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
7666}
7767
7868// SentinelSettings defines the specification of the sentinel cluster
7969type SentinelSettings struct {
80- Image string `json:"image,omitempty"`
81- Replicas int32 `json:"replicas,omitempty"`
82- Resources corev1.ResourceRequirements `json:"resources,omitempty"`
83- CustomConfig []string `json:"customConfig,omitempty"`
84- Command []string `json:"command,omitempty"`
85- Affinity * corev1.Affinity `json:"affinity,omitempty"`
86- SecurityContext * corev1.PodSecurityContext `json:"securityContext,omitempty"`
87- ToleRations []corev1.Toleration `json:"tolerations,omitempty"`
70+ Image string `json:"image,omitempty"`
71+ ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
72+ ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
73+ Replicas int32 `json:"replicas,omitempty"`
74+ Resources corev1.ResourceRequirements `json:"resources,omitempty"`
75+ CustomConfig []string `json:"customConfig,omitempty"`
76+ Command []string `json:"command,omitempty"`
77+ Affinity * corev1.Affinity `json:"affinity,omitempty"`
78+ SecurityContext * corev1.PodSecurityContext `json:"securityContext,omitempty"`
79+ ToleRations []corev1.Toleration `json:"tolerations,omitempty"`
80+ NodeSelector map [string ]string `json:"nodeSelector,omitempty"`
81+ Annotations map [string ]string `json:"annotations,omitempty"`
8882}
8983
9084// RedisStorage defines the structure used to store the Redis Data
0 commit comments