Skip to content

Commit e38816b

Browse files
authored
[internal] fixes in webhooks ModuleConfig and NFSStorageClass check funcs (#102)
Signed-off-by: v.oleynikov <[email protected]>
1 parent 34bd322 commit e38816b

File tree

9 files changed

+43
-97
lines changed

9 files changed

+43
-97
lines changed

.github/workflows/build_dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
GOPROXY: ${{ secrets.GOPROXY }}
1212
SOURCE_REPO: ${{ secrets.SOURCE_REPO }}
1313
SOURCE_REPO_SSH_KEY: ${{ secrets.SOURCE_REPO_SSH_KEY }}
14-
BASE_IMAGES_VERSION: "v0.5.8"
14+
BASE_IMAGES_VERSION: "v0.5.9"
1515

1616
on:
1717
#pull_request:

.github/workflows/build_prod.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ env:
1212
GOPROXY: ${{ secrets.GOPROXY }}
1313
SOURCE_REPO: ${{ secrets.SOURCE_REPO }}
1414
SOURCE_REPO_SSH_KEY: ${{ secrets.SOURCE_REPO_SSH_KEY }}
15-
BASE_IMAGES_VERSION: "v0.5.8"
15+
BASE_IMAGES_VERSION: "v0.5.9"
1616

1717
on:
1818
push:

images/controller/pkg/controller/mc_watcher.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,11 @@ func RunModuleConfigWatcherController(
5252
log logger.Logger,
5353
) (controller.Controller, error) {
5454
cl := mgr.GetClient()
55+
err := d8commonapi.AddToScheme(mgr.GetScheme())
56+
if err != nil {
57+
log.Error(err, "[ModuleConfigReconciler] unable to run watcher controller: unable to add scheme")
58+
return nil, err
59+
}
5560

5661
c, err := controller.New(ModuleConfigCtrlName, mgr, controller.Options{
5762
Reconciler: reconcile.Func(func(ctx context.Context, request reconcile.Request) (reconcile.Result, error) {

images/controller/pkg/controller/nfs_storage_class_watcher.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,11 @@ func RunNFSStorageClassWatcherController(
9494
log logger.Logger,
9595
) (controller.Controller, error) {
9696
cl := mgr.GetClient()
97+
err := d8commonapi.AddToScheme(mgr.GetScheme())
98+
if err != nil {
99+
log.Error(err, "[ModuleConfigReconciler] unable to run watcher controller: unable to add scheme")
100+
return nil, err
101+
}
97102

98103
c, err := controller.New(NFSStorageClassCtrlName, mgr, controller.Options{
99104
Reconciler: reconcile.Func(func(ctx context.Context, request reconcile.Request) (reconcile.Result, error) {

images/webhooks/go.mod

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,13 @@ require (
66
github.com/deckhouse/csi-nfs/api v0.0.0-20250213115525-4785a9da80db
77
github.com/deckhouse/csi-nfs/lib/go/common v0.0.0-20250213115525-4785a9da80db
88
github.com/deckhouse/sds-common-lib v0.5.0
9-
github.com/go-logr/logr v1.4.2
109
github.com/sirupsen/logrus v1.9.3
1110
github.com/slok/kubewebhook/v2 v2.7.0
1211
k8s.io/api v0.32.2
1312
k8s.io/apiextensions-apiserver v0.32.2
1413
k8s.io/apimachinery v0.32.3
1514
k8s.io/client-go v0.32.2
1615
k8s.io/klog/v2 v2.130.1
17-
sigs.k8s.io/controller-runtime v0.20.4
1816
)
1917

2018
// Do not combine multiple replacements into a single block,
@@ -24,56 +22,47 @@ replace github.com/deckhouse/csi-nfs/api => ../../api
2422
replace github.com/deckhouse/csi-nfs/lib/go/common => ../../lib/go/common
2523

2624
require (
27-
github.com/beorn7/perks v1.0.1 // indirect
28-
github.com/cespare/xxhash/v2 v2.3.0 // indirect
2925
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
3026
github.com/emicklei/go-restful/v3 v3.12.1 // indirect
3127
github.com/evanphx/json-patch v5.9.0+incompatible // indirect
3228
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
33-
github.com/fsnotify/fsnotify v1.8.0 // indirect
3429
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
30+
github.com/go-logr/logr v1.4.2 // indirect
3531
github.com/go-openapi/jsonpointer v0.21.0 // indirect
3632
github.com/go-openapi/jsonreference v0.21.0 // indirect
3733
github.com/go-openapi/swag v0.23.0 // indirect
3834
github.com/gogo/protobuf v1.3.2 // indirect
3935
github.com/golang/protobuf v1.5.4 // indirect
40-
github.com/google/btree v1.1.3 // indirect
4136
github.com/google/gnostic-models v0.6.9 // indirect
4237
github.com/google/go-cmp v0.7.0 // indirect
4338
github.com/google/gofuzz v1.2.0 // indirect
4439
github.com/google/uuid v1.6.0 // indirect
4540
github.com/josharian/intern v1.0.0 // indirect
4641
github.com/json-iterator/go v1.1.12 // indirect
47-
github.com/klauspost/compress v1.17.11 // indirect
4842
github.com/mailru/easyjson v0.9.0 // indirect
4943
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
5044
github.com/modern-go/reflect2 v1.0.2 // indirect
5145
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
5246
github.com/onsi/ginkgo/v2 v2.23.3 // indirect
5347
github.com/onsi/gomega v1.37.0 // indirect
54-
github.com/pkg/errors v0.9.1 // indirect
55-
github.com/prometheus/client_golang v1.20.5 // indirect
56-
github.com/prometheus/client_model v0.6.1 // indirect
57-
github.com/prometheus/common v0.62.0 // indirect
58-
github.com/prometheus/procfs v0.15.1 // indirect
5948
github.com/rogpeppe/go-internal v1.13.1 // indirect
6049
github.com/spf13/pflag v1.0.6 // indirect
50+
github.com/stretchr/testify v1.10.0 // indirect
6151
github.com/x448/float16 v0.8.4 // indirect
6252
golang.org/x/net v0.38.0 // indirect
6353
golang.org/x/oauth2 v0.26.0 // indirect
64-
golang.org/x/sync v0.12.0 // indirect
6554
golang.org/x/sys v0.32.0 // indirect
6655
golang.org/x/term v0.30.0 // indirect
6756
golang.org/x/text v0.23.0 // indirect
6857
golang.org/x/time v0.11.0 // indirect
6958
golang.org/x/tools v0.31.0 // indirect
7059
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
7160
google.golang.org/protobuf v1.36.5 // indirect
72-
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
7361
gopkg.in/inf.v0 v0.9.1 // indirect
7462
gopkg.in/yaml.v3 v3.0.1 // indirect
7563
k8s.io/kube-openapi v0.0.0-20241212222426-2c72e554b1e7 // indirect
7664
k8s.io/utils v0.0.0-20241210054802-24370beab758 // indirect
65+
sigs.k8s.io/controller-runtime v0.20.4 // indirect
7766
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
7867
sigs.k8s.io/structured-merge-diff/v4 v4.5.0 // indirect
7968
sigs.k8s.io/yaml v1.4.0 // indirect

images/webhooks/go.sum

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
2-
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
3-
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
4-
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
51
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
62
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
73
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
@@ -14,8 +10,6 @@ github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lSh
1410
github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
1511
github.com/evanphx/json-patch/v5 v5.9.11 h1:/8HVnzMq13/3x9TPvjG08wUGqBTmZBsCWzjTM0wiaDU=
1612
github.com/evanphx/json-patch/v5 v5.9.11/go.mod h1:3j+LviiESTElxA4p3EMKAB9HXj3/XEtnUf6OZxqIQTM=
17-
github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M=
18-
github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
1913
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
2014
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
2115
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
@@ -34,8 +28,6 @@ github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
3428
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
3529
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
3630
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
37-
github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg=
38-
github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4=
3931
github.com/google/gnostic-models v0.6.9 h1:MU/8wDLif2qCXZmzncUQ/BOfxWfthHi63KqpoNbWqVw=
4032
github.com/google/gnostic-models v0.6.9/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw=
4133
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
@@ -54,14 +46,10 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr
5446
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
5547
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
5648
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
57-
github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc=
58-
github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=
5949
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
6050
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
6151
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
6252
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
63-
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
64-
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
6553
github.com/mailru/easyjson v0.9.0 h1:PrnmzHw7262yW8sTBwxi1PdJA3Iw/EKBa8psRf7d9a4=
6654
github.com/mailru/easyjson v0.9.0/go.mod h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU=
6755
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
@@ -80,14 +68,6 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE
8068
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
8169
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
8270
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
83-
github.com/prometheus/client_golang v1.20.5 h1:cxppBPuYhUnsO6yo/aoRol4L7q7UFfdm+bR9r+8l63Y=
84-
github.com/prometheus/client_golang v1.20.5/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE=
85-
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
86-
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
87-
github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io=
88-
github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I=
89-
github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=
90-
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
9171
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
9272
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
9373
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
@@ -107,8 +87,6 @@ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
10787
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
10888
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
10989
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
110-
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
111-
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
11290
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
11391
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
11492
go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
@@ -129,8 +107,6 @@ golang.org/x/oauth2 v0.26.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbht
129107
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
130108
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
131109
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
132-
golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
133-
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
134110
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
135111
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
136112
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=

images/webhooks/handlers/func.go

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -19,74 +19,19 @@ package handlers
1919
import (
2020
"context"
2121
"net/http"
22-
"os"
2322

24-
"github.com/go-logr/logr"
2523
kwhhttp "github.com/slok/kubewebhook/v2/pkg/http"
2624
"github.com/slok/kubewebhook/v2/pkg/log"
2725
"github.com/slok/kubewebhook/v2/pkg/model"
2826
kwhmutating "github.com/slok/kubewebhook/v2/pkg/webhook/mutating"
2927
kwhvalidating "github.com/slok/kubewebhook/v2/pkg/webhook/validating"
30-
v1 "k8s.io/api/core/v1"
31-
"k8s.io/api/resource/v1alpha3"
32-
sv1 "k8s.io/api/storage/v1"
33-
extv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
3428
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
35-
apiruntime "k8s.io/apimachinery/pkg/runtime"
36-
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
37-
"k8s.io/client-go/rest"
38-
"k8s.io/client-go/tools/clientcmd"
39-
controllerruntime "sigs.k8s.io/controller-runtime"
40-
"sigs.k8s.io/controller-runtime/pkg/client"
41-
ctrllog "sigs.k8s.io/controller-runtime/pkg/log"
4229

4330
cn "github.com/deckhouse/csi-nfs/api/v1alpha1"
4431
commonvalidating "github.com/deckhouse/csi-nfs/lib/go/common/pkg/validating"
4532
d8commonapi "github.com/deckhouse/sds-common-lib/api/v1alpha1"
4633
)
4734

48-
func NewKubeClient(kubeconfigPath string) (client.Client, error) {
49-
var config *rest.Config
50-
var err error
51-
52-
if kubeconfigPath == "" {
53-
kubeconfigPath = os.Getenv("kubeconfig")
54-
}
55-
56-
controllerruntime.SetLogger(logr.New(ctrllog.NullLogSink{}))
57-
58-
config, err = clientcmd.BuildConfigFromFlags("", kubeconfigPath)
59-
60-
if err != nil {
61-
return nil, err
62-
}
63-
64-
var (
65-
resourcesSchemeFuncs = []func(*apiruntime.Scheme) error{
66-
v1alpha3.AddToScheme,
67-
cn.AddToScheme,
68-
clientgoscheme.AddToScheme,
69-
extv1.AddToScheme,
70-
v1.AddToScheme,
71-
sv1.AddToScheme,
72-
}
73-
)
74-
75-
scheme := apiruntime.NewScheme()
76-
for _, f := range resourcesSchemeFuncs {
77-
err = f(scheme)
78-
if err != nil {
79-
return nil, err
80-
}
81-
}
82-
83-
clientOpts := client.Options{
84-
Scheme: scheme,
85-
}
86-
87-
return client.New(config, clientOpts)
88-
}
89-
9035
func GetMutatingWebhookHandler(mutationFunc func(ctx context.Context, _ *model.AdmissionReview, obj metav1.Object) (*kwhmutating.MutatorResult, error), mutatorID string, obj metav1.Object, logger log.Logger) (http.Handler, error) {
9136
mutatorFunc := kwhmutating.MutatorFunc(mutationFunc)
9237

images/webhooks/handlers/mcValidator.go

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,17 @@ import (
2222

2323
"github.com/slok/kubewebhook/v2/pkg/model"
2424
kwhvalidating "github.com/slok/kubewebhook/v2/pkg/webhook/validating"
25+
v1 "k8s.io/api/core/v1"
26+
"k8s.io/api/resource/v1alpha3"
27+
sv1 "k8s.io/api/storage/v1"
28+
extv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
2529
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
30+
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
2631
"k8s.io/klog/v2"
2732

2833
cn "github.com/deckhouse/csi-nfs/api/v1alpha1"
2934
d8commonapi "github.com/deckhouse/sds-common-lib/api/v1alpha1"
35+
"github.com/deckhouse/sds-common-lib/kubeclient"
3036
)
3137

3238
func MCValidate(ctx context.Context, arReview *model.AdmissionReview, obj metav1.Object) (*kwhvalidating.ValidatorResult, error) {
@@ -40,7 +46,14 @@ func MCValidate(ctx context.Context, arReview *model.AdmissionReview, obj metav1
4046
return &kwhvalidating.ValidatorResult{Valid: true}, nil
4147
}
4248

43-
cl, err := NewKubeClient("")
49+
cl, err := kubeclient.New(d8commonapi.AddToScheme,
50+
v1alpha3.AddToScheme,
51+
cn.AddToScheme,
52+
clientgoscheme.AddToScheme,
53+
extv1.AddToScheme,
54+
v1.AddToScheme,
55+
sv1.AddToScheme,
56+
)
4457
if err != nil {
4558
klog.Fatal(err) // pod restarting
4659
}

images/webhooks/handlers/nscValidator.go

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,19 @@ import (
2222

2323
"github.com/slok/kubewebhook/v2/pkg/model"
2424
kwhvalidating "github.com/slok/kubewebhook/v2/pkg/webhook/validating"
25+
v1 "k8s.io/api/core/v1"
26+
"k8s.io/api/resource/v1alpha3"
27+
sv1 "k8s.io/api/storage/v1"
28+
extv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
2529
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2630
"k8s.io/apimachinery/pkg/types"
31+
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
2732
"k8s.io/klog/v2"
2833

2934
cn "github.com/deckhouse/csi-nfs/api/v1alpha1"
3035
commonvalidating "github.com/deckhouse/csi-nfs/lib/go/common/pkg/validating"
3136
d8commonapi "github.com/deckhouse/sds-common-lib/api/v1alpha1"
37+
"github.com/deckhouse/sds-common-lib/kubeclient"
3238
)
3339

3440
const (
@@ -46,7 +52,14 @@ func NSCValidate(ctx context.Context, arReview *model.AdmissionReview, obj metav
4652
return &kwhvalidating.ValidatorResult{Valid: true}, nil
4753
}
4854

49-
cl, err := NewKubeClient("")
55+
cl, err := kubeclient.New(d8commonapi.AddToScheme,
56+
v1alpha3.AddToScheme,
57+
cn.AddToScheme,
58+
clientgoscheme.AddToScheme,
59+
extv1.AddToScheme,
60+
v1.AddToScheme,
61+
sv1.AddToScheme,
62+
)
5063
if err != nil {
5164
klog.Fatal(err) // pod restarting
5265
}

0 commit comments

Comments
 (0)