Files
kubesphere/pkg/controller/network/webhooks/storageclass_accessor.go
f10atin9 f92026c606 add accessor
Signed-off-by: f10atin9 <f10atin9@kubesphere.io>
2022-04-06 16:44:32 +08:00

31 lines
683 B
Go

package webhooks
import (
"context"
accessor "github.com/kubesphere/storageclass-accessor/webhook"
v1 "k8s.io/api/admission/v1"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"
)
type AccessorHandler struct {
C client.Client
decoder *admission.Decoder
}
func (h *AccessorHandler) InjectDecoder(d *admission.Decoder) error {
h.decoder = d
return nil
}
func (h *AccessorHandler) Handle(ctx context.Context, req admission.Request) admission.Response {
review := v1.AdmissionReview{
Request: &req.AdmissionRequest,
}
resp := accessor.AdmitPVC(review)
return admission.Response{
AdmissionResponse: *resp,
}
}