Skip to content

Commit a00d372

Browse files
authored
Merge pull request #53 from IBM/ashima
Update StorageClass Yamls to accept custom secrets
2 parents db5024e + f2719a5 commit a00d372

File tree

6 files changed

+88
-57
lines changed

6 files changed

+88
-57
lines changed

.secrets.baseline

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"files": "go.sum|^.secrets.baseline$",
44
"lines": null
55
},
6-
"generated_at": "2024-10-28T04:49:57Z",
6+
"generated_at": "2024-11-25T05:25:45Z",
77
"plugins_used": [
88
{
99
"name": "AWSKeyDetector"
@@ -76,7 +76,17 @@
7676
"name": "TwilioKeyDetector"
7777
}
7878
],
79-
"results": {},
79+
"results": {
80+
"README.md": [
81+
{
82+
"hashed_secret": "325778ab9d49a6df7bc13a83563bec2de2a84c95",
83+
"is_verified": false,
84+
"line_number": 36,
85+
"type": "Secret Keyword",
86+
"verified_result": null
87+
}
88+
]
89+
},
8090
"version": "0.13.1+ibm.62.dss",
8191
"word_list": {
8292
"file": null,

README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,39 @@ make deploy IMG=<image-registry>/ibm-object-csi-driver-operator:<image-tag>
2929
kubectl apply -k config/samples/
3030
```
3131

32+
**Note**:
33+
- By default, in the IBM Object CSI Driver, the secret name is not tied to the PVC name. This allows you to use a single secret across multiple PVCs. For this, you’ll need to add two specific annotations in the PVC YAML. These annotations help the driver map the PVC to the correct secret.
34+
```
35+
annotations:
36+
cos.csi.driver/secret: "custom-secret"
37+
cos.csi.driver/secret-namespace: "default"
38+
```
39+
- If you want to have 1-to-1 mapping between each PVC and secret(using same name for both) i.e., specific secret tied to respective PVC, then you need to create a custom storage class as below and use it to create PVC.
40+
```
41+
apiVersion: storage.k8s.io/v1
42+
kind: StorageClass
43+
metadata:
44+
name: custom-object-csi-storage-class
45+
labels:
46+
provisioner: cos.s3.csi.ibm.io
47+
mountOptions:
48+
- "multipart_size=62"
49+
- "max_dirty_data=51200"
50+
- "parallel_count=8"
51+
- "max_stat_cache_size=100000"
52+
- "retries=5"
53+
- "kernel_cache"
54+
parameters:
55+
mounter: <"s3fs" or "rclone">
56+
client: "awss3"
57+
cosEndpoint: "https://s3.direct.us-west.cloud-object-storage.appdomain.cloud"
58+
locationConstraint: "us-west-smart"
59+
csi.storage.k8s.io/provisioner-secret-name: ${pvc.name}
60+
csi.storage.k8s.io/provisioner-secret-namespace: ${pvc.namespace}
61+
csi.storage.k8s.io/node-publish-secret-name: ${pvc.name}
62+
csi.storage.k8s.io/node-publish-secret-namespace: ${pvc.namespace}
63+
reclaimPolicy: <Retain or Delete>
64+
```
3265

3366
### Uninstall CRDs
3467
To delete the CRDs from the cluster:

controllers/ibmobjectcsi_controller_test.go

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -382,9 +382,7 @@ var (
382382
"client": "awss3",
383383
"cosEndpoint": "https://s3.us-east-2.amazonaws.com",
384384
"locationConstraint": "us-east-2",
385-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
386-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
387-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
385+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
388386
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
389387
},
390388
}
@@ -412,9 +410,7 @@ var (
412410
"client": "awss3",
413411
"cosEndpoint": "https://s3.us-east-2.amazonaws.com",
414412
"locationConstraint": "us-east-2",
415-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
416-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
417-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
413+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
418414
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
419415
},
420416
}
@@ -439,9 +435,7 @@ var (
439435
"client": "awss3",
440436
"cosEndpoint": "https://s3.us-east-2.amazonaws.com",
441437
"locationConstraint": "us-east-2",
442-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
443-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
444-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
438+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
445439
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
446440
},
447441
}
@@ -466,9 +460,7 @@ var (
466460
"client": "awss3",
467461
"cosEndpoint": "https://s3.us-east-2.amazonaws.com",
468462
"locationConstraint": "us-east-2",
469-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
470-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
471-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
463+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
472464
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
473465
},
474466
}

controllers/internal/crutils/static_resource_generator.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -258,9 +258,7 @@ func (c *IBMObjectCSI) GenerateS3fsSC(reclaimPolicy corev1.PersistentVolumeRecla
258258
"client": "awss3",
259259
"cosEndpoint": cosEndpoint,
260260
"locationConstraint": locationConstraint,
261-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
262-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
263-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
261+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
264262
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
265263
},
266264
}
@@ -308,9 +306,7 @@ func (c *IBMObjectCSI) GenerateRcloneSC(reclaimPolicy corev1.PersistentVolumeRec
308306
"client": "awss3",
309307
"cosEndpoint": cosEndpoint,
310308
"locationConstraint": locationConstraint,
311-
"csi.storage.k8s.io/provisioner-secret-name": "${pvc.name}",
312-
"csi.storage.k8s.io/provisioner-secret-namespace": "${pvc.namespace}",
313-
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.name}",
309+
"csi.storage.k8s.io/node-publish-secret-name": "${pvc.annotations['cos.csi.driver/secret']}",
314310
"csi.storage.k8s.io/node-publish-secret-namespace": "${pvc.namespace}",
315311
},
316312
}

go.mod

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
module github.com/IBM/ibm-object-csi-driver-operator
22

3-
go 1.23.1
3+
go 1.23.2
44

55
require (
66
github.com/evanphx/json-patch/v5 v5.9.0
77
github.com/go-logr/logr v1.4.2
88
github.com/imdario/mergo v0.3.16
9-
github.com/onsi/ginkgo/v2 v2.20.2
10-
github.com/onsi/gomega v1.34.2
11-
github.com/openshift/client-go v0.0.0-20241001162912-da6d55e4611f
9+
github.com/onsi/ginkgo/v2 v2.22.0
10+
github.com/onsi/gomega v1.35.1
11+
github.com/openshift/client-go v0.0.0-20241107164952-923091dd2b1a
1212
github.com/presslabs/controller-util v0.13.0
1313
github.com/stretchr/testify v1.9.0
14-
golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c
14+
golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f
1515
k8s.io/api v0.31.2
1616
k8s.io/apimachinery v0.31.2
1717
k8s.io/client-go v0.31.2
@@ -37,7 +37,7 @@ require (
3737
github.com/google/gnostic-models v0.6.8 // indirect
3838
github.com/google/go-cmp v0.6.0 // indirect
3939
github.com/google/gofuzz v1.2.0 // indirect
40-
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 // indirect
40+
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect
4141
github.com/google/uuid v1.6.0 // indirect
4242
github.com/iancoleman/strcase v0.3.0 // indirect
4343
github.com/josharian/intern v1.0.0 // indirect
@@ -46,7 +46,7 @@ require (
4646
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
4747
github.com/modern-go/reflect2 v1.0.2 // indirect
4848
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
49-
github.com/openshift/api v0.0.0-20241001152557-e415140e5d5f // indirect
49+
github.com/openshift/api v0.0.0-20241107155230-d37bb9f7e380 // indirect
5050
github.com/pkg/errors v0.9.1 // indirect
5151
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
5252
github.com/prometheus/client_golang v1.19.1 // indirect
@@ -57,15 +57,15 @@ require (
5757
github.com/x448/float16 v0.8.4 // indirect
5858
go.uber.org/multierr v1.11.0 // indirect
5959
go.uber.org/zap v1.27.0 // indirect
60-
golang.org/x/net v0.30.0 // indirect
60+
golang.org/x/net v0.31.0 // indirect
6161
golang.org/x/oauth2 v0.21.0 // indirect
62-
golang.org/x/sys v0.26.0 // indirect
63-
golang.org/x/term v0.25.0 // indirect
64-
golang.org/x/text v0.19.0 // indirect
62+
golang.org/x/sys v0.27.0 // indirect
63+
golang.org/x/term v0.26.0 // indirect
64+
golang.org/x/text v0.20.0 // indirect
6565
golang.org/x/time v0.3.0 // indirect
66-
golang.org/x/tools v0.26.0 // indirect
66+
golang.org/x/tools v0.27.0 // indirect
6767
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
68-
google.golang.org/protobuf v1.34.2 // indirect
68+
google.golang.org/protobuf v1.35.1 // indirect
6969
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
7070
gopkg.in/inf.v0 v0.9.1 // indirect
7171
gopkg.in/yaml.v2 v2.4.0 // indirect

go.sum

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN
4646
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
4747
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
4848
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
49-
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA=
50-
github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
49+
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo=
50+
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
5151
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
5252
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
5353
github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI=
@@ -76,14 +76,14 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G
7676
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
7777
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
7878
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
79-
github.com/onsi/ginkgo/v2 v2.20.2 h1:7NVCeyIWROIAheY21RLS+3j2bb52W0W82tkberYytp4=
80-
github.com/onsi/ginkgo/v2 v2.20.2/go.mod h1:K9gyxPIlb+aIvnZ8bd9Ak+YP18w3APlR+5coaZoE2ag=
81-
github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8=
82-
github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc=
83-
github.com/openshift/api v0.0.0-20241001152557-e415140e5d5f h1:ya1OmyZm3LIIxI3U9VE9Nyx3ehCHgBwxyFUPflYPWls=
84-
github.com/openshift/api v0.0.0-20241001152557-e415140e5d5f/go.mod h1:Shkl4HanLwDiiBzakv+con/aMGnVE2MAGvoKp5oyYUo=
85-
github.com/openshift/client-go v0.0.0-20241001162912-da6d55e4611f h1:FRc0bVNWprihWS0GqQWzb3dY4dkCwpOP3mDw5NwSoR4=
86-
github.com/openshift/client-go v0.0.0-20241001162912-da6d55e4611f/go.mod h1:KiZi2mJRH1TOJ3FtBDYS6YvUL30s/iIXaGSUrSa36mo=
79+
github.com/onsi/ginkgo/v2 v2.22.0 h1:Yed107/8DjTr0lKCNt7Dn8yQ6ybuDRQoMGrNFKzMfHg=
80+
github.com/onsi/ginkgo/v2 v2.22.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo=
81+
github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4=
82+
github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog=
83+
github.com/openshift/api v0.0.0-20241107155230-d37bb9f7e380 h1:EstDpct2ypQv500NPRQk92YBk9ZO0baDd94mna8o6w0=
84+
github.com/openshift/api v0.0.0-20241107155230-d37bb9f7e380/go.mod h1:Shkl4HanLwDiiBzakv+con/aMGnVE2MAGvoKp5oyYUo=
85+
github.com/openshift/client-go v0.0.0-20241107164952-923091dd2b1a h1:h3F55x+zOXwSG4okUlXmOlU/5CQ7Ve2HKxYjseJPVoY=
86+
github.com/openshift/client-go v0.0.0-20241107164952-923091dd2b1a/go.mod h1:JBIcn1JfD/JCpGYnRRT0+HLxrleF/Y7T3Y/t0p8o5jk=
8787
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
8888
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
8989
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
@@ -125,16 +125,16 @@ go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
125125
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
126126
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
127127
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
128-
golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c h1:7dEasQXItcW1xKJ2+gg5VOiBnqWrJc+rq0DPKyvvdbY=
129-
golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c/go.mod h1:NQtJDoLvd6faHhE7m4T/1IY708gDefGGjR/iUW8yQQ8=
128+
golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f h1:XdNn9LlyWAhLVp6P/i8QYBW+hlyhrhei9uErw2B5GJo=
129+
golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f/go.mod h1:D5SMRVC3C2/4+F/DB1wZsLRnSNimn2Sp/NPsCrsv8ak=
130130
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
131131
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
132132
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
133133
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
134134
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
135135
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
136-
golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4=
137-
golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU=
136+
golang.org/x/net v0.31.0 h1:68CPQngjLL0r2AlUKiSxtQFKvzRVbnzLwMUn5SzcLHo=
137+
golang.org/x/net v0.31.0/go.mod h1:P4fl1q7dY2hnZFxEk4pPSkDHF+QqjitcnDjUQyMM+pM=
138138
golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs=
139139
golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI=
140140
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -143,30 +143,30 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ
143143
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
144144
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
145145
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
146-
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
147-
golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
148-
golang.org/x/term v0.25.0 h1:WtHI/ltw4NvSUig5KARz9h521QvRC8RmF/cuYqifU24=
149-
golang.org/x/term v0.25.0/go.mod h1:RPyXicDX+6vLxogjjRxjgD2TKtmAO6NZBsBRfrOLu7M=
146+
golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s=
147+
golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
148+
golang.org/x/term v0.26.0 h1:WEQa6V3Gja/BhNxg540hBip/kkaYtRg3cxg4oXSw4AU=
149+
golang.org/x/term v0.26.0/go.mod h1:Si5m1o57C5nBNQo5z1iq+XDijt21BDBDp2bK0QI8e3E=
150150
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
151151
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
152-
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
153-
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
152+
golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
153+
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
154154
golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4=
155155
golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
156156
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
157157
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
158158
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
159159
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
160-
golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ=
161-
golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0=
160+
golang.org/x/tools v0.27.0 h1:qEKojBykQkQ4EynWy4S8Weg69NumxKdn40Fce3uc/8o=
161+
golang.org/x/tools v0.27.0/go.mod h1:sUi0ZgbwW9ZPAq26Ekut+weQPR5eIM6GQLQ1Yjm1H0Q=
162162
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
163163
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
164164
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
165165
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
166166
gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw=
167167
gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY=
168-
google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
169-
google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
168+
google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
169+
google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
170170
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
171171
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
172172
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=

0 commit comments

Comments
 (0)