From 802fed53e34755e636e576f2f3ed1173b62857ea Mon Sep 17 00:00:00 2001 From: Nikhita Raghunath Date: Fri, 6 Sep 2019 15:17:25 +0530 Subject: [PATCH] informer-gen: allow package names containing dots Before https://github.com/kubernetes/kubernetes/commit/73dc5a96de2836bd7a7fab57241810af47c7e3ee, informer-gen calculated the effective package name by using the first segment of the groupName. After the commit, the package name is calculated directly from the PackageName specified, without any normalizations. This meant that if the actual PackageName contains dots, the effective package name can now contain dots too. However, this doesn't work well while parsing files. This also introduced a regression since dots can no longer be specified in package names. To fix this, this commit introduces the same normalizations on the PackageName i.e. the effective package name now uses the first segment of PackageName. --- .../code-generator/cmd/informer-gen/generators/packages.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/staging/src/k8s.io/code-generator/cmd/informer-gen/generators/packages.go b/staging/src/k8s.io/code-generator/cmd/informer-gen/generators/packages.go index 049f82476f9..e936e29f029 100644 --- a/staging/src/k8s.io/code-generator/cmd/informer-gen/generators/packages.go +++ b/staging/src/k8s.io/code-generator/cmd/informer-gen/generators/packages.go @@ -283,9 +283,10 @@ func factoryInterfacePackage(basePackage string, boilerplate []byte, clientSetPa func groupPackage(basePackage string, groupVersions clientgentypes.GroupVersions, boilerplate []byte) generator.Package { packagePath := filepath.Join(basePackage, groupVersions.PackageName) + groupPkgName := strings.Split(string(groupVersions.PackageName), ".")[0] return &generator.DefaultPackage{ - PackageName: groupVersions.PackageName, + PackageName: groupPkgName, PackagePath: packagePath, HeaderText: boilerplate, GeneratorFunc: func(c *generator.Context) (generators []generator.Generator) {