Skip to content

Commit

Permalink
fix validate panic when ResourceInterpreterWebhookConfiguration .webh…
Browse files Browse the repository at this point in the history
…ooks[*].clientConfig.service.port is nil

Signed-off-by: changzhen <changzhen5@huawei.com>
  • Loading branch information
XiShanYongYe-Chang committed Dec 18, 2024
1 parent 8d89d77 commit 342a7b6
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
4 changes: 4 additions & 0 deletions pkg/webhook/configuration/validating.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ import (
"k8s.io/apimachinery/pkg/util/validation/field"
"k8s.io/apiserver/pkg/util/webhook"
"k8s.io/klog/v2"
"k8s.io/utils/ptr"
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"

configv1alpha1 "github.com/karmada-io/karmada/pkg/apis/config/v1alpha1"
Expand Down Expand Up @@ -103,6 +104,9 @@ func validateWebhook(hook *configv1alpha1.ResourceInterpreterWebhook, fldPath *f
case cc.URL != nil:
allErrors = append(allErrors, webhook.ValidateWebhookURL(fldPath.Child("clientConfig").Child("url"), *cc.URL, true)...)
case cc.Service != nil:
if cc.Service.Port == nil {
cc.Service.Port = ptr.To[int32](443)
}
allErrors = append(allErrors, webhook.ValidateWebhookService(fldPath.Child("clientConfig").Child("service"), cc.Service.Name, cc.Service.Namespace, cc.Service.Path, *cc.Service.Port)...)
}

Expand Down
11 changes: 11 additions & 0 deletions pkg/webhook/configuration/validating_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -264,6 +264,17 @@ func TestValidateWebhook(t *testing.T) {
},
expectedError: "service name is required",
},
{
name: "ClientConfig: valid service with nil port",
hook: &configv1alpha1.ResourceInterpreterWebhook{
ClientConfig: admissionregistrationv1.WebhookClientConfig{
Service: &admissionregistrationv1.ServiceReference{
Name: "svc",
Path: strPtr("/interpreter"),
},
},
},
},
{
name: "invalid interpreter context versions",
hook: &configv1alpha1.ResourceInterpreterWebhook{
Expand Down

0 comments on commit 342a7b6

Please sign in to comment.