@@ -59,32 +59,45 @@ var _ webhook.CustomValidator = &rayClusterWebhook{}
5959
6060// Default implements webhook.Defaulter so a webhook will be registered for the type
6161func (w * rayClusterWebhook ) Default (ctx context.Context , obj runtime.Object ) error {
62- raycluster := obj .(* rayv1.RayCluster )
62+ rayCluster := obj .(* rayv1.RayCluster )
6363
6464 if ! pointer .BoolDeref (w .Config .RayDashboardOAuthEnabled , true ) {
6565 return nil
6666 }
6767
6868 // Check and add OAuth proxy if it does not exist
69- for _ , container := range raycluster .Spec .HeadGroupSpec .Template .Spec .Containers {
69+ for _ , container := range rayCluster .Spec .HeadGroupSpec .Template .Spec .Containers {
7070 if container .Name == "oauth-proxy" {
7171 rayclusterlog .V (2 ).Info ("OAuth sidecar already exists, no patch needed" )
7272 return nil
7373 }
7474 }
7575
7676 rayclusterlog .V (2 ).Info ("Adding OAuth sidecar container" )
77- // definition of the new container
77+
7878 newOAuthSidecar := corev1.Container {
7979 Name : "oauth-proxy" ,
8080 Image : "registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366" ,
8181 Ports : []corev1.ContainerPort {
8282 {ContainerPort : 8443 , Name : "oauth-proxy" },
8383 },
84+ Env : []corev1.EnvVar {
85+ {
86+ Name : "COOKIE_SECRET" ,
87+ ValueFrom : & corev1.EnvVarSource {
88+ SecretKeyRef : & corev1.SecretKeySelector {
89+ LocalObjectReference : corev1.LocalObjectReference {
90+ Name : rayCluster .Name + "-oauth-config" ,
91+ },
92+ Key : "cookie_secret" ,
93+ },
94+ },
95+ },
96+ },
8497 Args : []string {
8598 "--https-address=:8443" ,
8699 "--provider=openshift" ,
87- "--openshift-service-account=" + raycluster .Name + "-oauth-proxy" ,
100+ "--openshift-service-account=" + rayCluster .Name + "-oauth-proxy" ,
88101 "--upstream=http://localhost:8265" ,
89102 "--tls-cert=/etc/tls/private/tls.crt" ,
90103 "--tls-key=/etc/tls/private/tls.key" ,
@@ -100,40 +113,22 @@ func (w *rayClusterWebhook) Default(ctx context.Context, obj runtime.Object) err
100113 },
101114 }
102115
103- // Adding the new OAuth sidecar container
104- raycluster .Spec .HeadGroupSpec .Template .Spec .Containers = append (raycluster .Spec .HeadGroupSpec .Template .Spec .Containers , newOAuthSidecar )
105-
106- cookieSecret := corev1.EnvVar {
107- Name : "COOKIE_SECRET" ,
108- ValueFrom : & corev1.EnvVarSource {
109- SecretKeyRef : & corev1.SecretKeySelector {
110- LocalObjectReference : corev1.LocalObjectReference {
111- Name : raycluster .Name + "-oauth-config" ,
112- },
113- Key : "cookie_secret" ,
114- },
115- },
116- }
117-
118- raycluster .Spec .HeadGroupSpec .Template .Spec .Containers [0 ].Env = append (
119- raycluster .Spec .HeadGroupSpec .Template .Spec .Containers [0 ].Env ,
120- cookieSecret ,
121- )
116+ rayCluster .Spec .HeadGroupSpec .Template .Spec .Containers = append (rayCluster .Spec .HeadGroupSpec .Template .Spec .Containers , newOAuthSidecar )
122117
123118 tlsSecretVolume := corev1.Volume {
124119 Name : "proxy-tls-secret" ,
125120 VolumeSource : corev1.VolumeSource {
126121 Secret : & corev1.SecretVolumeSource {
127- SecretName : raycluster .Name + "-proxy-tls-secret" ,
122+ SecretName : rayCluster .Name + "-proxy-tls-secret" ,
128123 },
129124 },
130125 }
131126
132- raycluster .Spec .HeadGroupSpec .Template .Spec .Volumes = append (raycluster .Spec .HeadGroupSpec .Template .Spec .Volumes , tlsSecretVolume )
127+ rayCluster .Spec .HeadGroupSpec .Template .Spec .Volumes = append (rayCluster .Spec .HeadGroupSpec .Template .Spec .Volumes , tlsSecretVolume )
133128
134129 // Ensure the service account is set
135- if raycluster .Spec .HeadGroupSpec .Template .Spec .ServiceAccountName == "" {
136- raycluster .Spec .HeadGroupSpec .Template .Spec .ServiceAccountName = raycluster .Name + "-oauth-proxy"
130+ if rayCluster .Spec .HeadGroupSpec .Template .Spec .ServiceAccountName == "" {
131+ rayCluster .Spec .HeadGroupSpec .Template .Spec .ServiceAccountName = rayCluster .Name + "-oauth-proxy"
137132 }
138133
139134 return nil
0 commit comments