From cd23e5f1fc298b136aa7b365f386f66db551f633 Mon Sep 17 00:00:00 2001 From: Michal Fojtik Date: Fri, 4 Aug 2017 11:50:43 +0200 Subject: [PATCH] codegen: skip generation of informers and listers on resources with missing verbs --- .../kube-gen/cmd/informer-gen/generators/packages.go | 8 +++++--- .../k8s.io/kube-gen/cmd/lister-gen/generators/lister.go | 9 +++++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/staging/src/k8s.io/kube-gen/cmd/informer-gen/generators/packages.go b/staging/src/k8s.io/kube-gen/cmd/informer-gen/generators/packages.go index f74206449ec..08d3caa810c 100644 --- a/staging/src/k8s.io/kube-gen/cmd/informer-gen/generators/packages.go +++ b/staging/src/k8s.io/kube-gen/cmd/informer-gen/generators/packages.go @@ -172,7 +172,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat var typesToGenerate []*types.Type for _, t := range p.Types { tags := util.MustParseClientGenTags(t.SecondClosestCommentLines) - if !tags.GenerateClient || tags.NoVerbs { + if !tags.GenerateClient || tags.NoVerbs || !tags.HasVerb("list") || !tags.HasVerb("watch") { continue } @@ -304,7 +304,8 @@ func groupPackage(basePackage string, groupVersions clientgentypes.GroupVersions return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return util.MustParseClientGenTags(t.SecondClosestCommentLines).GenerateClient + tags := util.MustParseClientGenTags(t.SecondClosestCommentLines) + return tags.GenerateClient && tags.HasVerb("list") && tags.HasVerb("watch") }, } } @@ -344,7 +345,8 @@ func versionPackage(basePackage string, gv clientgentypes.GroupVersion, boilerpl return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return util.MustParseClientGenTags(t.SecondClosestCommentLines).GenerateClient + tags := util.MustParseClientGenTags(t.SecondClosestCommentLines) + return tags.GenerateClient && tags.HasVerb("list") && tags.HasVerb("watch") }, } } diff --git a/staging/src/k8s.io/kube-gen/cmd/lister-gen/generators/lister.go b/staging/src/k8s.io/kube-gen/cmd/lister-gen/generators/lister.go index d850f7031c0..e2e0e75f718 100644 --- a/staging/src/k8s.io/kube-gen/cmd/lister-gen/generators/lister.go +++ b/staging/src/k8s.io/kube-gen/cmd/lister-gen/generators/lister.go @@ -117,11 +117,15 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat var typesToGenerate []*types.Type for _, t := range p.Types { - if !util.MustParseClientGenTags(t.SecondClosestCommentLines).GenerateClient { + tags := util.MustParseClientGenTags(t.SecondClosestCommentLines) + if !tags.GenerateClient || !tags.HasVerb("list") || !tags.HasVerb("get") { continue } typesToGenerate = append(typesToGenerate, t) } + if len(typesToGenerate) == 0 { + continue + } orderer := namer.Orderer{Namer: namer.NewPrivateNamer(0)} typesToGenerate = orderer.OrderTypes(typesToGenerate) @@ -155,7 +159,8 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return util.MustParseClientGenTags(t.SecondClosestCommentLines).GenerateClient + tags := util.MustParseClientGenTags(t.SecondClosestCommentLines) + return tags.GenerateClient && tags.HasVerb("list") && tags.HasVerb("get") }, }) }