Skip to content

Commit eff703d

Browse files
authored
Merge pull request kubernetes#84005 from yue9944882/chore/crd-internal-client-prune
Prune internal clients from CRD apiserver
2 parents 85b5a04 + 81471c3 commit eff703d

File tree

77 files changed

+1551
-2601
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+1551
-2601
lines changed

cmd/kube-apiserver/app/BUILD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ go_library(
3434
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
3535
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1:go_default_library",
3636
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver:go_default_library",
37-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion:go_default_library",
37+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions:go_default_library",
3838
"//staging/src/k8s.io/apiextensions-apiserver/pkg/cmd/server/options:go_default_library",
3939
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
4040
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",

cmd/kube-apiserver/app/aggregator.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import (
2828

2929
"k8s.io/klog"
3030

31-
apiextensionsinformers "k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion"
31+
apiextensionsinformers "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions"
3232
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3333
"k8s.io/apimachinery/pkg/runtime"
3434
"k8s.io/apimachinery/pkg/runtime/schema"
@@ -140,7 +140,7 @@ func createAggregatorServer(aggregatorConfig *aggregatorapiserver.Config, delega
140140
autoRegistrationController := autoregister.NewAutoRegisterController(aggregatorServer.APIRegistrationInformers.Apiregistration().V1().APIServices(), apiRegistrationClient)
141141
apiServices := apiServicesToRegister(delegateAPIServer, autoRegistrationController)
142142
crdRegistrationController := crdregistration.NewCRDRegistrationController(
143-
apiExtensionInformers.Apiextensions().InternalVersion().CustomResourceDefinitions(),
143+
apiExtensionInformers.Apiextensions().V1().CustomResourceDefinitions(),
144144
autoRegistrationController)
145145

146146
err = aggregatorServer.GenericAPIServer.AddPostStartHook("kube-apiserver-autoregistration", func(context genericapiserver.PostStartHookContext) error {

pkg/master/controller/crdregistration/BUILD

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ go_library(
1111
srcs = ["crdregistration_controller.go"],
1212
importpath = "k8s.io/kubernetes/pkg/master/controller/crdregistration",
1313
deps = [
14-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions:go_default_library",
15-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion/apiextensions/internalversion:go_default_library",
16-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/internalversion:go_default_library",
14+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
15+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1:go_default_library",
16+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1:go_default_library",
1717
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
1818
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
1919
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
@@ -44,8 +44,8 @@ go_test(
4444
srcs = ["crdregistration_controller_test.go"],
4545
embed = [":go_default_library"],
4646
deps = [
47-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions:go_default_library",
48-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/internalversion:go_default_library",
47+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
48+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1:go_default_library",
4949
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
5050
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
5151
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",

pkg/master/controller/crdregistration/crdregistration_controller.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ import (
2222

2323
"k8s.io/klog"
2424

25-
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
26-
crdinformers "k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion/apiextensions/internalversion"
27-
crdlisters "k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/internalversion"
25+
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
26+
crdinformers "k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1"
27+
crdlisters "k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1"
2828
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2929
"k8s.io/apimachinery/pkg/labels"
3030
"k8s.io/apimachinery/pkg/runtime/schema"
@@ -73,24 +73,24 @@ func NewCRDRegistrationController(crdinformer crdinformers.CustomResourceDefinit
7373

7474
crdinformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{
7575
AddFunc: func(obj interface{}) {
76-
cast := obj.(*apiextensions.CustomResourceDefinition)
76+
cast := obj.(*apiextensionsv1.CustomResourceDefinition)
7777
c.enqueueCRD(cast)
7878
},
7979
UpdateFunc: func(oldObj, newObj interface{}) {
8080
// Enqueue both old and new object to make sure we remove and add appropriate API services.
8181
// The working queue will resolve any duplicates and only changes will stay in the queue.
82-
c.enqueueCRD(oldObj.(*apiextensions.CustomResourceDefinition))
83-
c.enqueueCRD(newObj.(*apiextensions.CustomResourceDefinition))
82+
c.enqueueCRD(oldObj.(*apiextensionsv1.CustomResourceDefinition))
83+
c.enqueueCRD(newObj.(*apiextensionsv1.CustomResourceDefinition))
8484
},
8585
DeleteFunc: func(obj interface{}) {
86-
cast, ok := obj.(*apiextensions.CustomResourceDefinition)
86+
cast, ok := obj.(*apiextensionsv1.CustomResourceDefinition)
8787
if !ok {
8888
tombstone, ok := obj.(cache.DeletedFinalStateUnknown)
8989
if !ok {
9090
klog.V(2).Infof("Couldn't get object from tombstone %#v", obj)
9191
return
9292
}
93-
cast, ok = tombstone.Obj.(*apiextensions.CustomResourceDefinition)
93+
cast, ok = tombstone.Obj.(*apiextensionsv1.CustomResourceDefinition)
9494
if !ok {
9595
klog.V(2).Infof("Tombstone contained unexpected object: %#v", obj)
9696
return
@@ -184,7 +184,7 @@ func (c *crdRegistrationController) processNextWorkItem() bool {
184184
return true
185185
}
186186

187-
func (c *crdRegistrationController) enqueueCRD(crd *apiextensions.CustomResourceDefinition) {
187+
func (c *crdRegistrationController) enqueueCRD(crd *apiextensionsv1.CustomResourceDefinition) {
188188
for _, version := range crd.Spec.Versions {
189189
c.queue.Add(schema.GroupVersion{Group: crd.Spec.Group, Version: version.Name})
190190
}

pkg/master/controller/crdregistration/crdregistration_controller_test.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"reflect"
2121
"testing"
2222

23-
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
24-
crdlisters "k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/internalversion"
23+
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
24+
crdlisters "k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1"
2525
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2626
"k8s.io/apimachinery/pkg/runtime/schema"
2727
"k8s.io/client-go/tools/cache"
@@ -31,21 +31,21 @@ import (
3131
func TestHandleVersionUpdate(t *testing.T) {
3232
tests := []struct {
3333
name string
34-
startingCRDs []*apiextensions.CustomResourceDefinition
34+
startingCRDs []*apiextensionsv1.CustomResourceDefinition
3535
version schema.GroupVersion
3636

3737
expectedAdded []*apiregistration.APIService
3838
expectedRemoved []string
3939
}{
4040
{
4141
name: "simple add crd",
42-
startingCRDs: []*apiextensions.CustomResourceDefinition{
42+
startingCRDs: []*apiextensionsv1.CustomResourceDefinition{
4343
{
44-
Spec: apiextensions.CustomResourceDefinitionSpec{
44+
Spec: apiextensionsv1.CustomResourceDefinitionSpec{
4545
Group: "group.com",
4646
// Version field is deprecated and crd registration won't rely on it at all.
4747
// defaulting route will fill up Versions field if user only provided version field.
48-
Versions: []apiextensions.CustomResourceDefinitionVersion{
48+
Versions: []apiextensionsv1.CustomResourceDefinitionVersion{
4949
{
5050
Name: "v1",
5151
Served: true,
@@ -71,11 +71,11 @@ func TestHandleVersionUpdate(t *testing.T) {
7171
},
7272
{
7373
name: "simple remove crd",
74-
startingCRDs: []*apiextensions.CustomResourceDefinition{
74+
startingCRDs: []*apiextensionsv1.CustomResourceDefinition{
7575
{
76-
Spec: apiextensions.CustomResourceDefinitionSpec{
76+
Spec: apiextensionsv1.CustomResourceDefinitionSpec{
7777
Group: "group.com",
78-
Versions: []apiextensions.CustomResourceDefinitionVersion{
78+
Versions: []apiextensionsv1.CustomResourceDefinitionVersion{
7979
{
8080
Name: "v1",
8181
Served: true,

staging/src/k8s.io/apiextensions-apiserver/BUILD

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,7 @@ filegroup(
4040
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions:all-srcs",
4141
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver:all-srcs",
4242
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset:all-srcs",
43-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/clientset/internalclientset:all-srcs",
4443
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions:all-srcs",
45-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion:all-srcs",
46-
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/internalversion:all-srcs",
4744
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1:all-srcs",
4845
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1beta1:all-srcs",
4946
"//staging/src/k8s.io/apiextensions-apiserver/pkg/cmd/server:all-srcs",

staging/src/k8s.io/apiextensions-apiserver/hack/update-codegen.sh

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,18 @@ set -o pipefail
2121
SCRIPT_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
2222
CODEGEN_PKG=${CODEGEN_PKG:-$(cd "${SCRIPT_ROOT}"; ls -d -1 ./vendor/k8s.io/code-generator 2>/dev/null || echo ../code-generator)}
2323

24-
# generate the code with:
25-
# --output-base because this script should also be able to run inside the vendor dir of
26-
# k8s.io/kubernetes. The output-base is needed for the generators to output into the vendor dir
27-
# instead of the $GOPATH directly. For normal projects this can be dropped.
2824
CLIENTSET_NAME_VERSIONED=clientset \
25+
CLIENTSET_PKG_NAME=clientset \
26+
bash "${CODEGEN_PKG}/generate-groups.sh" deepcopy,client,lister,informer \
27+
k8s.io/apiextensions-apiserver/pkg/client k8s.io/apiextensions-apiserver/pkg/apis \
28+
"apiextensions:v1beta1,v1" \
29+
--output-base "$(dirname "${BASH_SOURCE[0]}")/../../.." \
30+
--go-header-file "${SCRIPT_ROOT}/hack/boilerplate.go.txt"
31+
32+
CLIENTSET_NAME_VERSIONED=clientset \
33+
CLIENTSET_PKG_NAME=clientset \
2934
CLIENTSET_NAME_INTERNAL=internalclientset \
30-
bash "${CODEGEN_PKG}/generate-internal-groups.sh" deepcopy,client,lister,informer,conversion \
35+
bash "${CODEGEN_PKG}/generate-internal-groups.sh" deepcopy,conversion \
3136
k8s.io/apiextensions-apiserver/pkg/client k8s.io/apiextensions-apiserver/pkg/apis k8s.io/apiextensions-apiserver/pkg/apis \
3237
"apiextensions:v1beta1,v1" \
3338
--output-base "$(dirname "${BASH_SOURCE[0]}")/../../.." \

staging/src/k8s.io/apiextensions-apiserver/pkg/apihelpers/BUILD

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,20 @@ go_library(
66
importmap = "k8s.io/kubernetes/vendor/k8s.io/apiextensions-apiserver/pkg/apihelpers",
77
importpath = "k8s.io/apiextensions-apiserver/pkg/apihelpers",
88
visibility = ["//visibility:public"],
9-
deps = ["//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1:go_default_library"],
9+
deps = [
10+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
11+
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
12+
],
1013
)
1114

1215
go_test(
1316
name = "go_default_test",
1417
srcs = ["helpers_test.go"],
1518
embed = [":go_default_library"],
16-
deps = ["//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1:go_default_library"],
19+
deps = [
20+
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
21+
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
22+
],
1723
)
1824

1925
filegroup(

0 commit comments

Comments
 (0)