From 34397721d62001f84ea902b7c62d48f609670e2d Mon Sep 17 00:00:00 2001 From: "Dr. Stefan Schimanski" Date: Mon, 24 Jul 2017 17:08:14 +0200 Subject: [PATCH] kube-gen: cut off conversion-gen from k8s.io/apimachinery --- .../cmd/conversion-gen/generators/conversion.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/staging/src/k8s.io/kube-gen/cmd/conversion-gen/generators/conversion.go b/staging/src/k8s.io/kube-gen/cmd/conversion-gen/generators/conversion.go index 6864d723467..97027d63a56 100644 --- a/staging/src/k8s.io/kube-gen/cmd/conversion-gen/generators/conversion.go +++ b/staging/src/k8s.io/kube-gen/cmd/conversion-gen/generators/conversion.go @@ -24,7 +24,6 @@ import ( "sort" "strings" - "k8s.io/apimachinery/pkg/util/sets" "k8s.io/gengo/args" "k8s.io/gengo/generator" "k8s.io/gengo/namer" @@ -188,7 +187,6 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat glog.Fatalf("Failed loading boilerplate: %v", err) } - inputs := sets.NewString(context.Inputs...) packages := generator.Packages{} header := append([]byte(fmt.Sprintf("// +build !%s\n\n", arguments.GeneratedBuildTag)), boilerplate...) header = append(header, []byte("\n// This file was autogenerated by conversion-gen. Do not edit it manually!\n\n")...) @@ -207,7 +205,14 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat // We are generating conversions only for packages that are explicitly // passed as InputDir. - for i := range inputs { + processed := map[string]bool{} + for _, i := range context.Inputs { + // skip duplicates + if processed[i] { + continue + } + processed[i] = true + glog.V(5).Infof("considering pkg %q", i) pkg := context.Universe[i] // typesPkg is where the versioned types are defined. Sometimes it is