Skip to content

Commit b46eceb

Browse files
authored
Merge pull request #64 from alexeyNsorokin/feature/security-context-propagation
Feature/security context propagation
2 parents f945b1f + 8dedc58 commit b46eceb

File tree

3 files changed

+34
-11
lines changed

3 files changed

+34
-11
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
apiVersion: redis.kun/v1alpha1
2+
kind: DistributedRedisCluster
3+
metadata:
4+
annotations:
5+
# if your operator run as cluster-scoped, add this annotations
6+
redis.kun/scope: cluster-scoped
7+
name: example-distributedrediscluster
8+
spec:
9+
image: redis:5.0.4-alpine
10+
masterSize: 3
11+
clusterReplicas: 1
12+
securityContext:
13+
runAsUser: 1101
14+
runAsGroup: 1101
15+
fsGroup: 1101
16+
supplementalGroups: [1101]
17+
containerSecurityContext:
18+
allowPrivilegeEscalation: false
19+
capabilities:
20+
drop:
21+
- ALL

pkg/apis/redis/v1alpha1/distributedrediscluster_types.go

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,18 @@ type DistributedRedisClusterSpec struct {
2525
ServiceName string `json:"serviceName,omitempty"`
2626
Config map[string]string `json:"config,omitempty"`
2727
// Set RequiredAntiAffinity to force the master-slave node anti-affinity.
28-
RequiredAntiAffinity bool `json:"requiredAntiAffinity,omitempty"`
29-
Affinity *corev1.Affinity `json:"affinity,omitempty"`
30-
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
31-
ToleRations []corev1.Toleration `json:"toleRations,omitempty"`
32-
SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
33-
Annotations map[string]string `json:"annotations,omitempty"`
34-
Storage *RedisStorage `json:"storage,omitempty"`
35-
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
36-
PasswordSecret *corev1.LocalObjectReference `json:"passwordSecret,omitempty"`
37-
Monitor *AgentSpec `json:"monitor,omitempty"`
38-
Init *InitSpec `json:"init,omitempty"`
28+
RequiredAntiAffinity bool `json:"requiredAntiAffinity,omitempty"`
29+
Affinity *corev1.Affinity `json:"affinity,omitempty"`
30+
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
31+
ToleRations []corev1.Toleration `json:"toleRations,omitempty"`
32+
SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
33+
ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
34+
Annotations map[string]string `json:"annotations,omitempty"`
35+
Storage *RedisStorage `json:"storage,omitempty"`
36+
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
37+
PasswordSecret *corev1.LocalObjectReference `json:"passwordSecret,omitempty"`
38+
Monitor *AgentSpec `json:"monitor,omitempty"`
39+
Init *InitSpec `json:"init,omitempty"`
3940
}
4041

4142
type AgentSpec struct {

pkg/resources/statefulsets/statefulset.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,7 @@ func redisServerContainer(cluster *redisv1alpha1.DistributedRedisCluster, passwo
232232
Name: redisServerName,
233233
Image: cluster.Spec.Image,
234234
ImagePullPolicy: cluster.Spec.ImagePullPolicy,
235+
SecurityContext: cluster.Spec.ContainerSecurityContext,
235236
Ports: []corev1.ContainerPort{
236237
{
237238
Name: "client",

0 commit comments

Comments
 (0)