Skip to content

Commit 850729b

Browse files
author
Chao Xu
committed
include multiple versions in clientset
update client-gen to use the term "internalversion" rather than "unversioned"; leave internal one unqualified; cleanup client-gen
1 parent 3bda688 commit 850729b

File tree

581 files changed

+3177
-2067
lines changed

Some content is hidden

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

581 files changed

+3177
-2067
lines changed

Diff for: cmd/kube-controller-manager/app/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ go_library(
2525
"//pkg/apis/batch:go_default_library",
2626
"//pkg/apis/componentconfig:go_default_library",
2727
"//pkg/client/clientset_generated/internalclientset:go_default_library",
28-
"//pkg/client/clientset_generated/internalclientset/typed/core/unversioned:go_default_library",
28+
"//pkg/client/clientset_generated/internalclientset/typed/core/internalversion:go_default_library",
2929
"//pkg/client/leaderelection:go_default_library",
3030
"//pkg/client/leaderelection/resourcelock:go_default_library",
3131
"//pkg/client/record:go_default_library",

Diff for: cmd/kube-controller-manager/app/controllermanager.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ import (
3737
"k8s.io/kubernetes/pkg/apimachinery/registered"
3838
"k8s.io/kubernetes/pkg/apis/batch"
3939
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
40-
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/unversioned"
40+
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
4141
"k8s.io/kubernetes/pkg/client/leaderelection"
4242
"k8s.io/kubernetes/pkg/client/leaderelection/resourcelock"
4343
"k8s.io/kubernetes/pkg/client/record"

Diff for: cmd/kube-proxy/app/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ go_library(
2121
"//cmd/kube-proxy/app/options:go_default_library",
2222
"//pkg/api:go_default_library",
2323
"//pkg/client/clientset_generated/internalclientset:go_default_library",
24-
"//pkg/client/clientset_generated/internalclientset/typed/core/unversioned:go_default_library",
24+
"//pkg/client/clientset_generated/internalclientset/typed/core/internalversion:go_default_library",
2525
"//pkg/client/record:go_default_library",
2626
"//pkg/client/unversioned/clientcmd:go_default_library",
2727
"//pkg/client/unversioned/clientcmd/api:go_default_library",

Diff for: cmd/kube-proxy/app/server.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import (
3131
"k8s.io/kubernetes/cmd/kube-proxy/app/options"
3232
"k8s.io/kubernetes/pkg/api"
3333
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
34-
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/unversioned"
34+
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
3535
"k8s.io/kubernetes/pkg/client/record"
3636
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
3737
clientcmdapi "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api"

Diff for: cmd/kubeadm/app/node/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ go_library(
2323
"//cmd/kubeadm/app/util:go_default_library",
2424
"//pkg/apis/certificates:go_default_library",
2525
"//pkg/client/clientset_generated/internalclientset:go_default_library",
26-
"//pkg/client/clientset_generated/internalclientset/typed/certificates/unversioned:go_default_library",
26+
"//pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion:go_default_library",
2727
"//pkg/client/unversioned/clientcmd:go_default_library",
2828
"//pkg/client/unversioned/clientcmd/api:go_default_library",
2929
"//pkg/kubelet/util/csr:go_default_library",

Diff for: cmd/kubeadm/app/node/bootstrap.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import (
2626
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
2727
"k8s.io/kubernetes/pkg/apis/certificates"
2828
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
29-
certclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/unversioned"
29+
certclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion"
3030
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
3131
"k8s.io/kubernetes/pkg/types"
3232
"k8s.io/kubernetes/pkg/util/wait"

Diff for: cmd/kubelet/app/BUILD

+4-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ go_library(
3232
"//pkg/capabilities:go_default_library",
3333
"//pkg/client/chaosclient:go_default_library",
3434
"//pkg/client/clientset_generated/internalclientset:go_default_library",
35-
"//pkg/client/clientset_generated/internalclientset/typed/authentication/unversioned:go_default_library",
36-
"//pkg/client/clientset_generated/internalclientset/typed/authorization/unversioned:go_default_library",
37-
"//pkg/client/clientset_generated/internalclientset/typed/certificates/unversioned:go_default_library",
38-
"//pkg/client/clientset_generated/internalclientset/typed/core/unversioned:go_default_library",
35+
"//pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion:go_default_library",
36+
"//pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion:go_default_library",
37+
"//pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion:go_default_library",
38+
"//pkg/client/clientset_generated/internalclientset/typed/core/internalversion:go_default_library",
3939
"//pkg/client/record:go_default_library",
4040
"//pkg/client/restclient:go_default_library",
4141
"//pkg/client/unversioned/auth:go_default_library",

Diff for: cmd/kubelet/app/auth.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ import (
2727
"k8s.io/kubernetes/pkg/auth/authorizer"
2828
"k8s.io/kubernetes/pkg/auth/group"
2929
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
30-
authenticationclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/unversioned"
31-
authorizationclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/unversioned"
30+
authenticationclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion"
31+
authorizationclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion"
3232
alwaysallowauthorizer "k8s.io/kubernetes/pkg/genericapiserver/authorizer"
3333
"k8s.io/kubernetes/pkg/kubelet/server"
3434
"k8s.io/kubernetes/pkg/types"

Diff for: cmd/kubelet/app/bootstrap.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525

2626
"github.com/golang/glog"
2727

28-
unversionedcertificates "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/unversioned"
28+
unversionedcertificates "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion"
2929
"k8s.io/kubernetes/pkg/client/restclient"
3030
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
3131
clientcmdapi "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api"

Diff for: cmd/kubelet/app/server.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ import (
4343
"k8s.io/kubernetes/pkg/capabilities"
4444
"k8s.io/kubernetes/pkg/client/chaosclient"
4545
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
46-
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/unversioned"
46+
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
4747
"k8s.io/kubernetes/pkg/client/record"
4848
"k8s.io/kubernetes/pkg/client/restclient"
4949
clientauth "k8s.io/kubernetes/pkg/client/unversioned/auth"

Diff for: cmd/libs/go2idl/client-gen/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ go_binary(
1717
deps = [
1818
"//cmd/libs/go2idl/client-gen/args:go_default_library",
1919
"//cmd/libs/go2idl/client-gen/generators:go_default_library",
20-
"//pkg/api/unversioned:go_default_library",
20+
"//cmd/libs/go2idl/client-gen/types:go_default_library",
2121
"//vendor:github.com/golang/glog",
2222
"//vendor:github.com/spf13/pflag",
2323
"//vendor:k8s.io/gengo/args",

Diff for: cmd/libs/go2idl/client-gen/args/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ go_library(
1414
name = "go_default_library",
1515
srcs = ["args.go"],
1616
tags = ["automanaged"],
17-
deps = ["//pkg/api/unversioned:go_default_library"],
17+
deps = ["//cmd/libs/go2idl/client-gen/types:go_default_library"],
1818
)

Diff for: cmd/libs/go2idl/client-gen/args/args.go

+4-7
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,19 @@ limitations under the License.
1616

1717
package args
1818

19-
import "k8s.io/kubernetes/pkg/api/unversioned"
19+
import "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/types"
2020

2121
// ClientGenArgs is a wrapper for arguments to client-gen.
2222
type Args struct {
23-
// TODO: we should make another type declaration of GroupVersion out of the
24-
// unversioned package, which is part of our API. Tools like client-gen
25-
// shouldn't depend on an API.
26-
GroupVersions []unversioned.GroupVersion
23+
Groups []types.GroupVersions
2724

2825
// GroupVersionToInputPath is a map between GroupVersion and the path to
2926
// the respective types.go. We still need GroupVersions in the struct because
3027
// we need an order.
31-
GroupVersionToInputPath map[unversioned.GroupVersion]string
28+
GroupVersionToInputPath map[types.GroupVersion]string
3229

3330
// Overrides for which types should be included in the client.
34-
IncludedTypesOverrides map[unversioned.GroupVersion][]string
31+
IncludedTypesOverrides map[types.GroupVersion][]string
3532

3633
// ClientsetName is the name of the clientset to be generated. It's
3734
// populated from command-line arguments.

Diff for: cmd/libs/go2idl/client-gen/generators/BUILD

+1-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ go_library(
2424
deps = [
2525
"//cmd/libs/go2idl/client-gen/args:go_default_library",
2626
"//cmd/libs/go2idl/client-gen/generators/fake:go_default_library",
27-
"//cmd/libs/go2idl/client-gen/generators/normalization:go_default_library",
28-
"//pkg/api/unversioned:go_default_library",
27+
"//cmd/libs/go2idl/client-gen/types:go_default_library",
2928
"//vendor:github.com/golang/glog",
3029
"//vendor:k8s.io/gengo/args",
3130
"//vendor:k8s.io/gengo/generator",

Diff for: cmd/libs/go2idl/client-gen/generators/client_generator.go

+20-18
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ import (
2828
"k8s.io/gengo/types"
2929
clientgenargs "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/args"
3030
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/fake"
31-
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/normalization"
32-
"k8s.io/kubernetes/pkg/api/unversioned"
31+
clientgentypes "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/types"
3332

3433
"github.com/golang/glog"
3534
)
@@ -62,10 +61,10 @@ func generatedBy(customArgs clientgenargs.Args) string {
6261
return fmt.Sprintf("\n// This package is generated by client-gen with the default arguments.\n\n")
6362
}
6463

65-
func packageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packageBasePath string, apiPath string, srcTreePath string, inputPath string, boilerplate []byte, generatedBy string) generator.Package {
66-
outputPackagePath := filepath.Join(packageBasePath, gv.Group, gv.Version)
64+
func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, packageBasePath string, apiPath string, srcTreePath string, inputPath string, boilerplate []byte, generatedBy string) generator.Package {
65+
outputPackagePath := strings.ToLower(filepath.Join(packageBasePath, gv.Group.NonEmpty(), gv.Version.NonEmpty()))
6766
return &generator.DefaultPackage{
68-
PackageName: gv.Version,
67+
PackageName: strings.ToLower(gv.Version.NonEmpty()),
6968
PackagePath: outputPackagePath,
7069
HeaderText: boilerplate,
7170
PackageDocumentation: []byte(
@@ -87,21 +86,21 @@ func packageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packag
8786
OptionalName: strings.ToLower(c.Namers["private"].Name(t)),
8887
},
8988
outputPackage: outputPackagePath,
90-
group: normalization.BeforeFirstDot(gv.Group),
91-
version: gv.Version,
89+
group: gv.Group.NonEmpty(),
90+
version: gv.Version.String(),
9291
typeToMatch: t,
9392
imports: generator.NewImportTracker(),
9493
})
9594
}
9695

9796
generators = append(generators, &genGroup{
9897
DefaultGen: generator.DefaultGen{
99-
OptionalName: normalization.BeforeFirstDot(gv.Group) + "_client",
98+
OptionalName: gv.Group.NonEmpty() + "_client",
10099
},
101100
outputPackage: outputPackagePath,
102101
inputPacakge: inputPath,
103-
group: gv.Group,
104-
version: gv.Version,
102+
group: gv.Group.NonEmpty(),
103+
version: gv.Version.String(),
105104
apiPath: apiPath,
106105
types: typeList,
107106
imports: generator.NewImportTracker(),
@@ -144,7 +143,7 @@ func packageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
144143
DefaultGen: generator.DefaultGen{
145144
OptionalName: "clientset",
146145
},
147-
groupVersions: customArgs.GroupVersions,
146+
groups: customArgs.Groups,
148147
typedClientPath: typedClientBasePath,
149148
outputPackage: customArgs.ClientsetName,
150149
imports: generator.NewImportTracker(),
@@ -170,7 +169,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
170169

171170
generatedBy := generatedBy(customArgs)
172171

173-
gvToTypes := map[unversioned.GroupVersion][]*types.Type{}
172+
gvToTypes := map[clientgentypes.GroupVersion][]*types.Type{}
174173
for gv, inputDir := range customArgs.GroupVersionToInputPath {
175174
p := context.Universe.Package(inputDir)
176175
for n, t := range p.Types {
@@ -215,12 +214,15 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
215214
}
216215

217216
orderer := namer.Orderer{Namer: namer.NewPrivateNamer(0)}
218-
for _, gv := range customArgs.GroupVersions {
219-
types := gvToTypes[gv]
220-
inputPath := customArgs.GroupVersionToInputPath[gv]
221-
packageList = append(packageList, packageForGroup(normalization.GroupVersion(gv), orderer.OrderTypes(types), typedClientBasePath, customArgs.ClientsetAPIPath, arguments.OutputBase, inputPath, boilerplate, generatedBy))
222-
if customArgs.FakeClient {
223-
packageList = append(packageList, fake.PackageForGroup(normalization.GroupVersion(gv), orderer.OrderTypes(types), typedClientBasePath, arguments.OutputBase, inputPath, boilerplate, generatedBy))
217+
for _, group := range customArgs.Groups {
218+
for _, version := range group.Versions {
219+
gv := clientgentypes.GroupVersion{Group: group.Group, Version: version}
220+
types := gvToTypes[gv]
221+
inputPath := customArgs.GroupVersionToInputPath[gv]
222+
packageList = append(packageList, packageForGroup(gv, orderer.OrderTypes(types), typedClientBasePath, customArgs.ClientsetAPIPath, arguments.OutputBase, inputPath, boilerplate, generatedBy))
223+
if customArgs.FakeClient {
224+
packageList = append(packageList, fake.PackageForGroup(gv, orderer.OrderTypes(types), typedClientBasePath, arguments.OutputBase, inputPath, boilerplate, generatedBy))
225+
}
224226
}
225227
}
226228

Diff for: cmd/libs/go2idl/client-gen/generators/fake/BUILD

+1-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@ go_library(
2121
tags = ["automanaged"],
2222
deps = [
2323
"//cmd/libs/go2idl/client-gen/args:go_default_library",
24-
"//cmd/libs/go2idl/client-gen/generators/normalization:go_default_library",
25-
"//pkg/api/unversioned:go_default_library",
24+
"//cmd/libs/go2idl/client-gen/types:go_default_library",
2625
"//vendor:github.com/golang/glog",
2726
"//vendor:k8s.io/gengo/generator",
2827
"//vendor:k8s.io/gengo/namer",

Diff for: cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go

+10-10
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,13 @@ import (
2525
"k8s.io/gengo/generator"
2626
"k8s.io/gengo/types"
2727
clientgenargs "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/args"
28-
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/normalization"
29-
"k8s.io/kubernetes/pkg/api/unversioned"
28+
clientgentypes "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/types"
3029
)
3130

32-
func PackageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packageBasePath string, srcTreePath string, inputPath string, boilerplate []byte, generatedBy string) generator.Package {
33-
outputPackagePath := filepath.Join(packageBasePath, gv.Group, gv.Version, "fake")
31+
func PackageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, packageBasePath string, srcTreePath string, inputPath string, boilerplate []byte, generatedBy string) generator.Package {
32+
outputPackagePath := strings.ToLower(filepath.Join(packageBasePath, gv.Group.NonEmpty(), gv.Version.NonEmpty(), "fake"))
3433
// TODO: should make this a function, called by here and in client-generator.go
35-
realClientPath := filepath.Join(packageBasePath, gv.Group, gv.Version)
34+
realClientPath := filepath.Join(packageBasePath, gv.Group.NonEmpty(), gv.Version.NonEmpty())
3635
return &generator.DefaultPackage{
3736
PackageName: "fake",
3837
PackagePath: outputPackagePath,
@@ -56,21 +55,22 @@ func PackageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packag
5655
OptionalName: "fake_" + strings.ToLower(c.Namers["private"].Name(t)),
5756
},
5857
outputPackage: outputPackagePath,
59-
group: normalization.BeforeFirstDot(gv.Group),
58+
group: gv.Group.NonEmpty(),
59+
version: gv.Version.String(),
6060
inputPackage: inputPath,
61-
version: gv.Version,
6261
typeToMatch: t,
6362
imports: generator.NewImportTracker(),
6463
})
6564
}
6665

6766
generators = append(generators, &genFakeForGroup{
6867
DefaultGen: generator.DefaultGen{
69-
OptionalName: "fake_" + normalization.BeforeFirstDot(gv.Group) + "_client",
68+
OptionalName: "fake_" + gv.Group.NonEmpty() + "_client",
7069
},
7170
outputPackage: outputPackagePath,
7271
realClientPath: realClientPath,
73-
group: normalization.BeforeFirstDot(gv.Group),
72+
group: gv.Group.NonEmpty(),
73+
version: gv.Version.String(),
7474
types: typeList,
7575
imports: generator.NewImportTracker(),
7676
})
@@ -112,7 +112,7 @@ func PackageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
112112
DefaultGen: generator.DefaultGen{
113113
OptionalName: "clientset_generated",
114114
},
115-
groupVersions: customArgs.GroupVersions,
115+
groups: customArgs.Groups,
116116
typedClientPath: typedClientBasePath,
117117
outputPackage: "fake",
118118
imports: generator.NewImportTracker(),

0 commit comments

Comments
 (0)