From 5dc7554ab29bf907a6114796f494979d477bb4bf Mon Sep 17 00:00:00 2001 From: Mike Danese Date: Thu, 27 Oct 2016 15:11:52 -0700 Subject: [PATCH] bazel: implement set-gen as a bazel genrule --- cmd/libs/go2idl/set-gen/BUILD | 4 ++++ hack/boilerplate/BUILD | 3 +++ pkg/util/sets/BUILD | 34 +++++++++++++++++++++++++++------- pkg/util/sets/types/types.go | 4 +++- 4 files changed, 37 insertions(+), 8 deletions(-) create mode 100644 hack/boilerplate/BUILD diff --git a/cmd/libs/go2idl/set-gen/BUILD b/cmd/libs/go2idl/set-gen/BUILD index 9538fbef4dc..8f9e3feaa57 100644 --- a/cmd/libs/go2idl/set-gen/BUILD +++ b/cmd/libs/go2idl/set-gen/BUILD @@ -20,3 +20,7 @@ go_binary( "//vendor:k8s.io/gengo/examples/set-gen/generators", ], ) + +exports_files([ + "types.go", +]) diff --git a/hack/boilerplate/BUILD b/hack/boilerplate/BUILD new file mode 100644 index 00000000000..c405bde045d --- /dev/null +++ b/hack/boilerplate/BUILD @@ -0,0 +1,3 @@ +package(default_visibility = ["//visibility:public"]) + +exports_files(glob(["*.txt"])) diff --git a/pkg/util/sets/BUILD b/pkg/util/sets/BUILD index 8e48d4886ac..f751da67e14 100644 --- a/pkg/util/sets/BUILD +++ b/pkg/util/sets/BUILD @@ -13,14 +13,8 @@ load( go_library( name = "go_default_library", srcs = [ - "byte.go", - "doc.go", - "empty.go", - "int.go", - "int64.go", - "string.go", + ":set-gen", ], - tags = ["automanaged"], ) go_test( @@ -30,3 +24,29 @@ go_test( tags = ["automanaged"], deps = [], ) + +genrule( + name = "set-gen", + srcs = [ + "//pkg/util/sets/types:types.go", + "//hack/boilerplate:boilerplate.go.txt", + ], + outs = [ + "byte.go", + "doc.go", + "empty.go", + "int.go", + "int64.go", + "string.go", + ], + cmd = """ +$(location //cmd/libs/go2idl/set-gen) \ + --input-dirs ./pkg/util/sets/types \ + --output-base $(GENDIR)/pkg/util \ + --go-header-file $(location //hack/boilerplate:boilerplate.go.txt) \ + --output-package sets + """, + tools = [ + "//cmd/libs/go2idl/set-gen", + ], +) diff --git a/pkg/util/sets/types/types.go b/pkg/util/sets/types/types.go index 6759b8ca885..2599851c920 100644 --- a/pkg/util/sets/types/types.go +++ b/pkg/util/sets/types/types.go @@ -22,7 +22,9 @@ package types //go:generate set-gen -i k8s.io/kubernetes/pkg/util/sets/types type ReferenceSetTypes struct { - // These types all cause files to be generated + // These types all cause files to be generated. + // These types should be reflected in the ouput of + // the "//pkg/util/sets:set-gen" genrule. a int64 b int c byte