@@ -23,14 +23,14 @@ import (
2323
2424 corev1 "k8s.io/api/core/v1"
2525 "k8s.io/apimachinery/pkg/runtime"
26+ "k8s.io/apimachinery/pkg/util/validation/field"
2627 "k8s.io/utils/pointer"
2728 ctrl "sigs.k8s.io/controller-runtime"
2829 logf "sigs.k8s.io/controller-runtime/pkg/log"
2930 "sigs.k8s.io/controller-runtime/pkg/webhook"
31+ "sigs.k8s.io/controller-runtime/pkg/webhook/admission"
3032
3133 "github.com/project-codeflare/codeflare-operator/pkg/config"
32- "k8s.io/apimachinery/pkg/util/validation/field"
33- "sigs.k8s.io/controller-runtime/pkg/webhook/admission"
3434)
3535
3636// log is for logging in this package.
@@ -42,22 +42,25 @@ func SetupRayClusterWebhookWithManager(mgr ctrl.Manager, cfg *config.KubeRayConf
4242 WithDefaulter (& rayClusterDefaulter {
4343 Config : cfg ,
4444 }).
45- WithValidator (& rayClusterValidator {}).
45+ WithValidator (& rayClusterValidator {
46+ Config : cfg ,
47+ }).
4648 Complete ()
4749}
4850
4951// +kubebuilder:webhook:path=/mutate-ray-io-v1-raycluster,mutating=true,failurePolicy=fail,sideEffects=None,groups=ray.io,resources=rayclusters,verbs=create;update,versions=v1,name=mraycluster.kb.io,admissionReviewVersions=v1
50- //+kubebuilder:webhook:path=/validate-ray-io-v1-raycluster,mutating=false,failurePolicy=fail,sideEffects=None,groups=ray.io,resources=rayclusters,verbs=create;update,versions=v1,name=vraycluster.kb.io,admissionReviewVersions=v1
52+ // +kubebuilder:webhook:path=/validate-ray-io-v1-raycluster,mutating=false,failurePolicy=fail,sideEffects=None,groups=ray.io,resources=rayclusters,verbs=create;update,versions=v1,name=vraycluster.kb.io,admissionReviewVersions=v1
5153
5254type rayClusterDefaulter struct {
5355 Config * config.KubeRayConfiguration
5456}
55- type rayClusterValidator struct {}
57+ type rayClusterValidator struct {
58+ Config * config.KubeRayConfiguration
59+ }
5660
5761var _ webhook.CustomDefaulter = & rayClusterDefaulter {}
5862var _ webhook.CustomValidator = & rayClusterValidator {}
5963
60-
6164// Default implements webhook.Defaulter so a webhook will be registered for the type
6265func (r * rayClusterDefaulter ) Default (ctx context.Context , obj runtime.Object ) error {
6366 raycluster := obj .(* rayv1.RayCluster )
@@ -157,7 +160,7 @@ func (v *rayClusterValidator) ValidateCreate(ctx context.Context, obj runtime.Ob
157160func (v * rayClusterValidator ) ValidateUpdate (ctx context.Context , oldObj , newObj runtime.Object ) (admission.Warnings , error ) {
158161 newRayCluster := newObj .(* rayv1.RayCluster )
159162 if ! newRayCluster .DeletionTimestamp .IsZero () {
160- // Object is being deleted, skip validations
163+ // Object is being deleted, skip validations
161164 return nil , nil
162165 }
163166 warnings , err := v .ValidateCreate (ctx , newRayCluster )
0 commit comments