From bb5e156aba3ff73ceb85576670c35d7565b84a4c Mon Sep 17 00:00:00 2001 From: Gavin Date: Wed, 17 Jan 2018 16:22:37 +0800 Subject: [PATCH 1/2] Add generic Bootstrap Token constants and helpers to client-go --- cmd/kubeadm/app/cmd/phases/bootstraptoken.go | 5 ++- cmd/kubeadm/app/cmd/token.go | 7 ++-- cmd/kubeadm/app/constants/constants.go | 2 +- cmd/kubeadm/app/discovery/file/file.go | 2 +- cmd/kubeadm/app/discovery/token/token.go | 2 +- .../bootstraptoken/clusterinfo/clusterinfo.go | 2 +- .../app/phases/bootstraptoken/node/token.go | 5 ++- pkg/bootstrap/api/BUILD | 41 ------------------- pkg/bootstrap/api/OWNERS | 5 --- pkg/controller/bootstrap/bootstrapsigner.go | 2 +- .../bootstrap/bootstrapsigner_test.go | 2 +- pkg/controller/bootstrap/common_test.go | 2 +- pkg/controller/bootstrap/tokencleaner.go | 2 +- pkg/controller/bootstrap/util.go | 2 +- pkg/controller/bootstrap/util_test.go | 2 +- .../token/bootstrap/bootstrap.go | 9 ++-- .../token/bootstrap/bootstrap_test.go | 2 +- .../tools/bootstrap/token}/api/doc.go | 2 +- .../tools/bootstrap/token}/api/types.go | 0 .../tools/bootstrap/token/util}/helpers.go | 11 ++--- .../bootstrap/token/util}/helpers_test.go | 2 +- .../lifecycle/bootstrap/bootstrap_signer.go | 2 +- .../bootstrap/bootstrap_token_cleaner.go | 2 +- test/e2e/lifecycle/bootstrap/util.go | 2 +- test/integration/auth/bootstraptoken_test.go | 2 +- 25 files changed, 38 insertions(+), 79 deletions(-) delete mode 100644 pkg/bootstrap/api/BUILD delete mode 100644 pkg/bootstrap/api/OWNERS rename {pkg/bootstrap => staging/src/k8s.io/client-go/tools/bootstrap/token}/api/doc.go (92%) rename {pkg/bootstrap => staging/src/k8s.io/client-go/tools/bootstrap/token}/api/types.go (100%) rename {pkg/bootstrap/api => staging/src/k8s.io/client-go/tools/bootstrap/token/util}/helpers.go (84%) rename {pkg/bootstrap/api => staging/src/k8s.io/client-go/tools/bootstrap/token/util}/helpers_test.go (99%) diff --git a/cmd/kubeadm/app/cmd/phases/bootstraptoken.go b/cmd/kubeadm/app/cmd/phases/bootstraptoken.go index fb216125636..02e602cc03e 100644 --- a/cmd/kubeadm/app/cmd/phases/bootstraptoken.go +++ b/cmd/kubeadm/app/cmd/phases/bootstraptoken.go @@ -26,6 +26,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/sets" clientset "k8s.io/client-go/kubernetes" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" + bootstraputil "k8s.io/client-go/tools/bootstrap/token/util" kubeadmapiext "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha1" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/validation" cmdutil "k8s.io/kubernetes/cmd/kubeadm/app/cmd/util" @@ -38,7 +40,6 @@ import ( kubeconfigutil "k8s.io/kubernetes/cmd/kubeadm/app/util/kubeconfig" "k8s.io/kubernetes/cmd/kubeadm/app/util/pubkeypin" "k8s.io/kubernetes/pkg/api/legacyscheme" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/util/normalizer" ) @@ -327,7 +328,7 @@ func createBootstrapToken(client clientset.Interface, cfgPath string, cfg *kubea // validate any extra group names for _, group := range extraGroups { - if err := bootstrapapi.ValidateBootstrapGroupName(group); err != nil { + if err := bootstraputil.ValidateBootstrapGroupName(group); err != nil { return err } } diff --git a/cmd/kubeadm/app/cmd/token.go b/cmd/kubeadm/app/cmd/token.go index 87b8d077750..e9a65caf3a5 100644 --- a/cmd/kubeadm/app/cmd/token.go +++ b/cmd/kubeadm/app/cmd/token.go @@ -36,6 +36,8 @@ import ( "k8s.io/apimachinery/pkg/fields" "k8s.io/apimachinery/pkg/util/sets" clientset "k8s.io/client-go/kubernetes" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" + bootstraputil "k8s.io/client-go/tools/bootstrap/token/util" "k8s.io/client-go/tools/clientcmd" clientcertutil "k8s.io/client-go/util/cert" kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm" @@ -48,7 +50,6 @@ import ( "k8s.io/kubernetes/cmd/kubeadm/app/util/pubkeypin" tokenutil "k8s.io/kubernetes/cmd/kubeadm/app/util/token" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/printers" ) @@ -226,13 +227,13 @@ func RunCreateToken(out io.Writer, client clientset.Interface, token string, tok // validate any extra group names for _, group := range extraGroups { - if err := bootstrapapi.ValidateBootstrapGroupName(group); err != nil { + if err := bootstraputil.ValidateBootstrapGroupName(group); err != nil { return err } } // validate usages - if err := bootstrapapi.ValidateUsages(usages); err != nil { + if err := bootstraputil.ValidateUsages(usages); err != nil { return err } diff --git a/cmd/kubeadm/app/constants/constants.go b/cmd/kubeadm/app/constants/constants.go index 390b8c5f1d8..a5e5e7ff0ff 100644 --- a/cmd/kubeadm/app/constants/constants.go +++ b/cmd/kubeadm/app/constants/constants.go @@ -25,7 +25,7 @@ import ( "time" "k8s.io/api/core/v1" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/kubernetes/pkg/registry/core/service/ipallocator" "k8s.io/kubernetes/pkg/util/version" ) diff --git a/cmd/kubeadm/app/discovery/file/file.go b/cmd/kubeadm/app/discovery/file/file.go index 60d3d48d08b..c1cb537d5cd 100644 --- a/cmd/kubeadm/app/discovery/file/file.go +++ b/cmd/kubeadm/app/discovery/file/file.go @@ -23,11 +23,11 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/wait" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/client-go/tools/clientcmd" clientcmdapi "k8s.io/client-go/tools/clientcmd/api" "k8s.io/kubernetes/cmd/kubeadm/app/constants" kubeconfigutil "k8s.io/kubernetes/cmd/kubeadm/app/util/kubeconfig" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" ) // RetrieveValidatedClusterInfo connects to the API Server and makes sure it can talk diff --git a/cmd/kubeadm/app/discovery/token/token.go b/cmd/kubeadm/app/discovery/token/token.go index 69dc3a94f9c..2079520a655 100644 --- a/cmd/kubeadm/app/discovery/token/token.go +++ b/cmd/kubeadm/app/discovery/token/token.go @@ -26,13 +26,13 @@ import ( "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/wait" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/client-go/tools/clientcmd" clientcmdapi "k8s.io/client-go/tools/clientcmd/api" "k8s.io/kubernetes/cmd/kubeadm/app/constants" kubeconfigutil "k8s.io/kubernetes/cmd/kubeadm/app/util/kubeconfig" "k8s.io/kubernetes/cmd/kubeadm/app/util/pubkeypin" tokenutil "k8s.io/kubernetes/cmd/kubeadm/app/util/token" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/controller/bootstrap" ) diff --git a/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/clusterinfo.go b/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/clusterinfo.go index b1295c8552f..9cf9b01a79d 100644 --- a/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/clusterinfo.go +++ b/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/clusterinfo.go @@ -24,11 +24,11 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apiserver/pkg/authentication/user" clientset "k8s.io/client-go/kubernetes" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/client-go/tools/clientcmd" clientcmdapi "k8s.io/client-go/tools/clientcmd/api" "k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient" rbachelper "k8s.io/kubernetes/pkg/apis/rbac/v1" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" ) const ( diff --git a/cmd/kubeadm/app/phases/bootstraptoken/node/token.go b/cmd/kubeadm/app/phases/bootstraptoken/node/token.go index b033702c468..02f63b7ce51 100644 --- a/cmd/kubeadm/app/phases/bootstraptoken/node/token.go +++ b/cmd/kubeadm/app/phases/bootstraptoken/node/token.go @@ -25,8 +25,9 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" clientset "k8s.io/client-go/kubernetes" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" + bootstraputil "k8s.io/client-go/tools/bootstrap/token/util" tokenutil "k8s.io/kubernetes/cmd/kubeadm/app/util/token" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" ) const tokenCreateRetries = 5 @@ -115,7 +116,7 @@ func encodeTokenSecretData(tokenID, tokenSecret string, duration time.Duration, } // validate usages - if err := bootstrapapi.ValidateUsages(usages); err != nil { + if err := bootstraputil.ValidateUsages(usages); err != nil { return nil, err } for _, usage := range usages { diff --git a/pkg/bootstrap/api/BUILD b/pkg/bootstrap/api/BUILD deleted file mode 100644 index f72517262a5..00000000000 --- a/pkg/bootstrap/api/BUILD +++ /dev/null @@ -1,41 +0,0 @@ -package(default_visibility = ["//visibility:public"]) - -load( - "@io_bazel_rules_go//go:def.bzl", - "go_library", - "go_test", -) - -go_library( - name = "go_default_library", - srcs = [ - "doc.go", - "helpers.go", - "types.go", - ], - importpath = "k8s.io/kubernetes/pkg/bootstrap/api", - deps = [ - "//vendor/k8s.io/api/core/v1:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", - ], -) - -filegroup( - name = "package-srcs", - srcs = glob(["**"]), - tags = ["automanaged"], - visibility = ["//visibility:private"], -) - -filegroup( - name = "all-srcs", - srcs = [":package-srcs"], - tags = ["automanaged"], -) - -go_test( - name = "go_default_test", - srcs = ["helpers_test.go"], - embed = [":go_default_library"], - importpath = "k8s.io/kubernetes/pkg/bootstrap/api", -) diff --git a/pkg/bootstrap/api/OWNERS b/pkg/bootstrap/api/OWNERS deleted file mode 100644 index 8a2f5b5915b..00000000000 --- a/pkg/bootstrap/api/OWNERS +++ /dev/null @@ -1,5 +0,0 @@ -approvers: -- jbeda -- luxas -reviewers: -- mattmoyer diff --git a/pkg/controller/bootstrap/bootstrapsigner.go b/pkg/controller/bootstrap/bootstrapsigner.go index 5db870aa49d..7677a677859 100644 --- a/pkg/controller/bootstrap/bootstrapsigner.go +++ b/pkg/controller/bootstrap/bootstrapsigner.go @@ -31,10 +31,10 @@ import ( informers "k8s.io/client-go/informers/core/v1" clientset "k8s.io/client-go/kubernetes" corelisters "k8s.io/client-go/listers/core/v1" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/controller" "k8s.io/kubernetes/pkg/util/metrics" ) diff --git a/pkg/controller/bootstrap/bootstrapsigner_test.go b/pkg/controller/bootstrap/bootstrapsigner_test.go index 15fab2e26b0..b7b88d5b9c5 100644 --- a/pkg/controller/bootstrap/bootstrapsigner_test.go +++ b/pkg/controller/bootstrap/bootstrapsigner_test.go @@ -28,8 +28,8 @@ import ( coreinformers "k8s.io/client-go/informers/core/v1" "k8s.io/client-go/kubernetes/fake" core "k8s.io/client-go/testing" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/controller" ) diff --git a/pkg/controller/bootstrap/common_test.go b/pkg/controller/bootstrap/common_test.go index a61ebc21882..04c4d0edee4 100644 --- a/pkg/controller/bootstrap/common_test.go +++ b/pkg/controller/bootstrap/common_test.go @@ -24,8 +24,8 @@ import ( "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" core "k8s.io/client-go/testing" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/kubernetes/pkg/apis/core/helper" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" ) func newTokenSecret(tokenID, tokenSecret string) *v1.Secret { diff --git a/pkg/controller/bootstrap/tokencleaner.go b/pkg/controller/bootstrap/tokencleaner.go index 34a91e492c8..d39582b2fb9 100644 --- a/pkg/controller/bootstrap/tokencleaner.go +++ b/pkg/controller/bootstrap/tokencleaner.go @@ -29,10 +29,10 @@ import ( coreinformers "k8s.io/client-go/informers/core/v1" clientset "k8s.io/client-go/kubernetes" corelisters "k8s.io/client-go/listers/core/v1" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/controller" "k8s.io/kubernetes/pkg/util/metrics" ) diff --git a/pkg/controller/bootstrap/util.go b/pkg/controller/bootstrap/util.go index b0f1aecc7f8..d679fb17cc0 100644 --- a/pkg/controller/bootstrap/util.go +++ b/pkg/controller/bootstrap/util.go @@ -23,7 +23,7 @@ import ( "github.com/golang/glog" "k8s.io/api/core/v1" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" ) var namePattern = `^` + regexp.QuoteMeta(bootstrapapi.BootstrapTokenSecretPrefix) + `([a-z0-9]{6})$` diff --git a/pkg/controller/bootstrap/util_test.go b/pkg/controller/bootstrap/util_test.go index 2899c68737b..d02cab61e08 100644 --- a/pkg/controller/bootstrap/util_test.go +++ b/pkg/controller/bootstrap/util_test.go @@ -24,7 +24,7 @@ import ( "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" ) const ( diff --git a/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap.go b/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap.go index 90a0137489d..a0a615886b7 100644 --- a/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap.go +++ b/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap.go @@ -31,8 +31,9 @@ import ( "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apiserver/pkg/authentication/user" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" + bootstraputil "k8s.io/client-go/tools/bootstrap/token/util" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/pkg/client/listers/core/internalversion" ) @@ -149,7 +150,7 @@ func (t *TokenAuthenticator) AuthenticateToken(token string) (user.Info, bool, e }, true, nil } -// Copied from k8s.io/kubernetes/pkg/bootstrap/api +// Copied from k8s.io/client-go/tools/bootstrap/token/api func getSecretString(secret *api.Secret, key string) string { if secret.Data == nil { return "" @@ -160,7 +161,7 @@ func getSecretString(secret *api.Secret, key string) string { return "" } -// Copied from k8s.io/kubernetes/pkg/bootstrap/api +// Copied from k8s.io/client-go/tools/bootstrap/token/api func isSecretExpired(secret *api.Secret) bool { expiration := getSecretString(secret, bootstrapapi.BootstrapTokenExpirationKey) if len(expiration) > 0 { @@ -209,7 +210,7 @@ func getGroups(secret *api.Secret) ([]string, error) { // validate the names of the extra groups for _, group := range strings.Split(extraGroupsString, ",") { - if err := bootstrapapi.ValidateBootstrapGroupName(group); err != nil { + if err := bootstraputil.ValidateBootstrapGroupName(group); err != nil { return nil, err } groups.Insert(group) diff --git a/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap_test.go b/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap_test.go index f319cc8667b..99bf7fc16c5 100644 --- a/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap_test.go +++ b/plugin/pkg/auth/authenticator/token/bootstrap/bootstrap_test.go @@ -25,8 +25,8 @@ import ( "k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apiserver/pkg/authentication/user" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" ) type lister struct { diff --git a/pkg/bootstrap/api/doc.go b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/doc.go similarity index 92% rename from pkg/bootstrap/api/doc.go rename to staging/src/k8s.io/client-go/tools/bootstrap/token/api/doc.go index 9fed79198db..72738711769 100644 --- a/pkg/bootstrap/api/doc.go +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/doc.go @@ -17,4 +17,4 @@ limitations under the License. // Package api (pkg/bootstrap/api) contains constants and types needed for // bootstrap tokens as maintained by the BootstrapSigner and TokenCleaner // controllers (in pkg/controller/bootstrap) -package api // import "k8s.io/kubernetes/pkg/bootstrap/api" +package api // import "k8s.io/client-go/tools/bootstrap/api" diff --git a/pkg/bootstrap/api/types.go b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/types.go similarity index 100% rename from pkg/bootstrap/api/types.go rename to staging/src/k8s.io/client-go/tools/bootstrap/token/api/types.go diff --git a/pkg/bootstrap/api/helpers.go b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers.go similarity index 84% rename from pkg/bootstrap/api/helpers.go rename to staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers.go index c750cf75830..d28fd28f2ec 100644 --- a/pkg/bootstrap/api/helpers.go +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers.go @@ -14,16 +14,17 @@ See the License for the specific language governing permissions and limitations under the License. */ -package api +package util import ( "fmt" "k8s.io/apimachinery/pkg/util/sets" + "k8s.io/client-go/tools/bootstrap/token/api" "regexp" "strings" ) -var bootstrapGroupRegexp = regexp.MustCompile(`\A` + BootstrapGroupPattern + `\z`) +var bootstrapGroupRegexp = regexp.MustCompile(`\A` + api.BootstrapGroupPattern + `\z`) // ValidateBootstrapGroupName checks if the provided group name is a valid // bootstrap group name. Returns nil if valid or a validation error if invalid. @@ -32,12 +33,12 @@ func ValidateBootstrapGroupName(name string) error { if bootstrapGroupRegexp.Match([]byte(name)) { return nil } - return fmt.Errorf("bootstrap group %q is invalid (must match %s)", name, BootstrapGroupPattern) + return fmt.Errorf("bootstrap group %q is invalid (must match %s)", name, api.BootstrapGroupPattern) } // ValidateUsages validates that the passed in string are valid usage strings for bootstrap tokens. func ValidateUsages(usages []string) error { - validUsages := sets.NewString(KnownTokenUsages...) + validUsages := sets.NewString(api.KnownTokenUsages...) invalidUsages := sets.NewString() for _, usage := range usages { if !validUsages.Has(usage) { @@ -45,7 +46,7 @@ func ValidateUsages(usages []string) error { } } if len(invalidUsages) > 0 { - return fmt.Errorf("invalide bootstrap token usage string: %s, valid usage options: %s", strings.Join(invalidUsages.List(), ","), strings.Join(KnownTokenUsages, ",")) + return fmt.Errorf("invalide bootstrap token usage string: %s, valid usage options: %s", strings.Join(invalidUsages.List(), ","), strings.Join(api.KnownTokenUsages, ",")) } return nil } diff --git a/pkg/bootstrap/api/helpers_test.go b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers_test.go similarity index 99% rename from pkg/bootstrap/api/helpers_test.go rename to staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers_test.go index d1575f60840..915bf754026 100644 --- a/pkg/bootstrap/api/helpers_test.go +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/helpers_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package api +package util import ( "strings" diff --git a/test/e2e/lifecycle/bootstrap/bootstrap_signer.go b/test/e2e/lifecycle/bootstrap/bootstrap_signer.go index 8b2c7fd7411..a8cd3868a89 100644 --- a/test/e2e/lifecycle/bootstrap/bootstrap_signer.go +++ b/test/e2e/lifecycle/bootstrap/bootstrap_signer.go @@ -22,7 +22,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" clientset "k8s.io/client-go/kubernetes" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/lifecycle" ) diff --git a/test/e2e/lifecycle/bootstrap/bootstrap_token_cleaner.go b/test/e2e/lifecycle/bootstrap/bootstrap_token_cleaner.go index 0acab639b69..57adc11473c 100644 --- a/test/e2e/lifecycle/bootstrap/bootstrap_token_cleaner.go +++ b/test/e2e/lifecycle/bootstrap/bootstrap_token_cleaner.go @@ -24,7 +24,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" clientset "k8s.io/client-go/kubernetes" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/lifecycle" ) diff --git a/test/e2e/lifecycle/bootstrap/util.go b/test/e2e/lifecycle/bootstrap/util.go index 5b3e663af2b..8904c7a7272 100644 --- a/test/e2e/lifecycle/bootstrap/util.go +++ b/test/e2e/lifecycle/bootstrap/util.go @@ -27,7 +27,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/wait" clientset "k8s.io/client-go/kubernetes" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" "k8s.io/kubernetes/test/e2e/framework" ) diff --git a/test/integration/auth/bootstraptoken_test.go b/test/integration/auth/bootstraptoken_test.go index 213e15ebda7..43b17c71128 100644 --- a/test/integration/auth/bootstraptoken_test.go +++ b/test/integration/auth/bootstraptoken_test.go @@ -27,8 +27,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" "k8s.io/apiserver/pkg/authentication/request/bearertoken" + bootstrapapi "k8s.io/client-go/tools/bootstrap/token/api" api "k8s.io/kubernetes/pkg/apis/core" - bootstrapapi "k8s.io/kubernetes/pkg/bootstrap/api" "k8s.io/kubernetes/plugin/pkg/admission/admit" "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/bootstrap" bootstraputil "k8s.io/kubernetes/test/e2e/lifecycle/bootstrap" From f653d02b059b78b6a540fb7eadc4b8862226fc7a Mon Sep 17 00:00:00 2001 From: Gavin Date: Wed, 17 Jan 2018 16:23:03 +0800 Subject: [PATCH 2/2] create auto-gen files --- cmd/kubeadm/app/cmd/BUILD | 3 +- cmd/kubeadm/app/cmd/phases/BUILD | 3 +- cmd/kubeadm/app/constants/BUILD | 2 +- cmd/kubeadm/app/discovery/file/BUILD | 2 +- cmd/kubeadm/app/discovery/token/BUILD | 2 +- .../phases/bootstraptoken/clusterinfo/BUILD | 2 +- .../app/phases/bootstraptoken/node/BUILD | 3 +- pkg/BUILD | 1 - pkg/controller/bootstrap/BUILD | 4 +-- .../auth/authenticator/token/bootstrap/BUILD | 5 +-- staging/BUILD | 2 ++ .../client-go/tools/bootstrap/token/api/BUILD | 26 +++++++++++++++ .../tools/bootstrap/token/api/OWNERS | 5 +++ .../tools/bootstrap/token/util/BUILD | 33 +++++++++++++++++++ test/e2e/lifecycle/bootstrap/BUILD | 2 +- test/integration/auth/BUILD | 2 +- 16 files changed, 83 insertions(+), 14 deletions(-) create mode 100644 staging/src/k8s.io/client-go/tools/bootstrap/token/api/BUILD create mode 100644 staging/src/k8s.io/client-go/tools/bootstrap/token/api/OWNERS create mode 100644 staging/src/k8s.io/client-go/tools/bootstrap/token/util/BUILD diff --git a/cmd/kubeadm/app/cmd/BUILD b/cmd/kubeadm/app/cmd/BUILD index f15c577dee5..448a61ed0cf 100644 --- a/cmd/kubeadm/app/cmd/BUILD +++ b/cmd/kubeadm/app/cmd/BUILD @@ -54,7 +54,6 @@ go_library( "//cmd/kubeadm/app/util/token:go_default_library", "//pkg/api/legacyscheme:go_default_library", "//pkg/apis/core:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/kubectl/cmd/util:go_default_library", "//pkg/kubectl/util/i18n:go_default_library", "//pkg/printers:go_default_library", @@ -73,6 +72,8 @@ go_library( "//vendor/k8s.io/apimachinery/pkg/version:go_default_library", "//vendor/k8s.io/apiserver/pkg/util/flag:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/util:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd:go_default_library", "//vendor/k8s.io/client-go/util/cert:go_default_library", "//vendor/k8s.io/utils/exec:go_default_library", diff --git a/cmd/kubeadm/app/cmd/phases/BUILD b/cmd/kubeadm/app/cmd/phases/BUILD index ec3ae74f96d..114c6946430 100644 --- a/cmd/kubeadm/app/cmd/phases/BUILD +++ b/cmd/kubeadm/app/cmd/phases/BUILD @@ -49,13 +49,14 @@ go_library( "//cmd/kubeadm/app/util/kubeconfig:go_default_library", "//cmd/kubeadm/app/util/pubkeypin:go_default_library", "//pkg/api/legacyscheme:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/util/normalizer:go_default_library", "//vendor/github.com/spf13/cobra:go_default_library", "//vendor/github.com/spf13/pflag:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/util:go_default_library", "//vendor/k8s.io/utils/exec:go_default_library", ], ) diff --git a/cmd/kubeadm/app/constants/BUILD b/cmd/kubeadm/app/constants/BUILD index 30d303111a7..84e98154fbc 100644 --- a/cmd/kubeadm/app/constants/BUILD +++ b/cmd/kubeadm/app/constants/BUILD @@ -11,10 +11,10 @@ go_library( srcs = ["constants.go"], importpath = "k8s.io/kubernetes/cmd/kubeadm/app/constants", deps = [ - "//pkg/bootstrap/api:go_default_library", "//pkg/registry/core/service/ipallocator:go_default_library", "//pkg/util/version:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", ], ) diff --git a/cmd/kubeadm/app/discovery/file/BUILD b/cmd/kubeadm/app/discovery/file/BUILD index b0cf89d8e5a..363a8f27220 100644 --- a/cmd/kubeadm/app/discovery/file/BUILD +++ b/cmd/kubeadm/app/discovery/file/BUILD @@ -12,11 +12,11 @@ go_library( deps = [ "//cmd/kubeadm/app/constants:go_default_library", "//cmd/kubeadm/app/util/kubeconfig:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library", ], diff --git a/cmd/kubeadm/app/discovery/token/BUILD b/cmd/kubeadm/app/discovery/token/BUILD index cb4de3f600f..dd00f687734 100644 --- a/cmd/kubeadm/app/discovery/token/BUILD +++ b/cmd/kubeadm/app/discovery/token/BUILD @@ -15,11 +15,11 @@ go_library( "//cmd/kubeadm/app/util/kubeconfig:go_default_library", "//cmd/kubeadm/app/util/pubkeypin:go_default_library", "//cmd/kubeadm/app/util/token:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/controller/bootstrap:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library", ], diff --git a/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/BUILD b/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/BUILD index df3f70f55f9..37f1f585ad7 100644 --- a/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/BUILD +++ b/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo/BUILD @@ -27,12 +27,12 @@ go_library( deps = [ "//cmd/kubeadm/app/util/apiclient:go_default_library", "//pkg/apis/rbac/v1:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/api/rbac/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apiserver/pkg/authentication/user:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library", ], diff --git a/cmd/kubeadm/app/phases/bootstraptoken/node/BUILD b/cmd/kubeadm/app/phases/bootstraptoken/node/BUILD index e20d68b5d57..18277ceb1a6 100644 --- a/cmd/kubeadm/app/phases/bootstraptoken/node/BUILD +++ b/cmd/kubeadm/app/phases/bootstraptoken/node/BUILD @@ -25,12 +25,13 @@ go_library( "//cmd/kubeadm/app/constants:go_default_library", "//cmd/kubeadm/app/util/apiclient:go_default_library", "//cmd/kubeadm/app/util/token:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/api/rbac/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/util:go_default_library", ], ) diff --git a/pkg/BUILD b/pkg/BUILD index 5e06162d6c4..81f72da72bd 100644 --- a/pkg/BUILD +++ b/pkg/BUILD @@ -50,7 +50,6 @@ filegroup( "//pkg/apis/storage:all-srcs", "//pkg/auth/authorizer/abac:all-srcs", "//pkg/auth/nodeidentifier:all-srcs", - "//pkg/bootstrap/api:all-srcs", "//pkg/capabilities:all-srcs", "//pkg/client/chaosclient:all-srcs", "//pkg/client/clientset_generated/internalclientset:all-srcs", diff --git a/pkg/controller/bootstrap/BUILD b/pkg/controller/bootstrap/BUILD index f5850a6fba9..d7e514e7ff1 100644 --- a/pkg/controller/bootstrap/BUILD +++ b/pkg/controller/bootstrap/BUILD @@ -20,7 +20,6 @@ go_test( deps = [ "//pkg/apis/core:go_default_library", "//pkg/apis/core/helper:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/controller:go_default_library", "//vendor/github.com/davecgh/go-spew/spew:go_default_library", "//vendor/github.com/stretchr/testify/assert:go_default_library", @@ -31,6 +30,7 @@ go_test( "//vendor/k8s.io/client-go/informers/core/v1:go_default_library", "//vendor/k8s.io/client-go/kubernetes/fake:go_default_library", "//vendor/k8s.io/client-go/testing:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", ], ) @@ -46,7 +46,6 @@ go_library( importpath = "k8s.io/kubernetes/pkg/controller/bootstrap", deps = [ "//pkg/apis/core:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/controller:go_default_library", "//pkg/util/metrics:go_default_library", "//vendor/github.com/golang/glog:go_default_library", @@ -60,6 +59,7 @@ go_library( "//vendor/k8s.io/client-go/informers/core/v1:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", "//vendor/k8s.io/client-go/listers/core/v1:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", "//vendor/k8s.io/client-go/tools/cache:go_default_library", "//vendor/k8s.io/client-go/util/workqueue:go_default_library", ], diff --git a/plugin/pkg/auth/authenticator/token/bootstrap/BUILD b/plugin/pkg/auth/authenticator/token/bootstrap/BUILD index d2f3a239d45..0464fa85831 100644 --- a/plugin/pkg/auth/authenticator/token/bootstrap/BUILD +++ b/plugin/pkg/auth/authenticator/token/bootstrap/BUILD @@ -13,12 +13,12 @@ go_test( importpath = "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/bootstrap", deps = [ "//pkg/apis/core:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/labels:go_default_library", "//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", "//vendor/k8s.io/apiserver/pkg/authentication/user:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", ], ) @@ -28,12 +28,13 @@ go_library( importpath = "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/bootstrap", deps = [ "//pkg/apis/core:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/client/listers/core/internalversion:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", "//vendor/k8s.io/apiserver/pkg/authentication/user:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/util:go_default_library", ], ) diff --git a/staging/BUILD b/staging/BUILD index b7f2b8fbd08..ff9fea11b74 100644 --- a/staging/BUILD +++ b/staging/BUILD @@ -179,6 +179,8 @@ filegroup( "//staging/src/k8s.io/client-go/testing:all-srcs", "//staging/src/k8s.io/client-go/third_party/forked/golang/template:all-srcs", "//staging/src/k8s.io/client-go/tools/auth:all-srcs", + "//staging/src/k8s.io/client-go/tools/bootstrap/token/api:all-srcs", + "//staging/src/k8s.io/client-go/tools/bootstrap/token/util:all-srcs", "//staging/src/k8s.io/client-go/tools/cache:all-srcs", "//staging/src/k8s.io/client-go/tools/clientcmd:all-srcs", "//staging/src/k8s.io/client-go/tools/leaderelection:all-srcs", diff --git a/staging/src/k8s.io/client-go/tools/bootstrap/token/api/BUILD b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/BUILD new file mode 100644 index 00000000000..7416adc0106 --- /dev/null +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/BUILD @@ -0,0 +1,26 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = [ + "doc.go", + "types.go", + ], + importpath = "k8s.io/client-go/tools/bootstrap/token/api", + visibility = ["//visibility:public"], + deps = ["//vendor/k8s.io/api/core/v1:go_default_library"], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/staging/src/k8s.io/client-go/tools/bootstrap/token/api/OWNERS b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/OWNERS new file mode 100644 index 00000000000..8a2f5b5915b --- /dev/null +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/api/OWNERS @@ -0,0 +1,5 @@ +approvers: +- jbeda +- luxas +reviewers: +- mattmoyer diff --git a/staging/src/k8s.io/client-go/tools/bootstrap/token/util/BUILD b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/BUILD new file mode 100644 index 00000000000..9c015fb5d11 --- /dev/null +++ b/staging/src/k8s.io/client-go/tools/bootstrap/token/util/BUILD @@ -0,0 +1,33 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "go_default_library", + srcs = ["helpers.go"], + importpath = "k8s.io/client-go/tools/bootstrap/token/util", + visibility = ["//visibility:public"], + deps = [ + "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", + ], +) + +go_test( + name = "go_default_test", + srcs = ["helpers_test.go"], + embed = [":go_default_library"], + importpath = "k8s.io/client-go/tools/bootstrap/token/util", +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/test/e2e/lifecycle/bootstrap/BUILD b/test/e2e/lifecycle/bootstrap/BUILD index bb33240381d..3b7db6b5d57 100644 --- a/test/e2e/lifecycle/bootstrap/BUILD +++ b/test/e2e/lifecycle/bootstrap/BUILD @@ -14,7 +14,6 @@ go_library( ], importpath = "k8s.io/kubernetes/test/e2e/lifecycle/bootstrap", deps = [ - "//pkg/bootstrap/api:go_default_library", "//test/e2e/framework:go_default_library", "//test/e2e/lifecycle:go_default_library", "//vendor/github.com/onsi/ginkgo:go_default_library", @@ -24,6 +23,7 @@ go_library( "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", "//vendor/k8s.io/client-go/kubernetes:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", ], ) diff --git a/test/integration/auth/BUILD b/test/integration/auth/BUILD index 897557a21a9..55f0e5ccc73 100644 --- a/test/integration/auth/BUILD +++ b/test/integration/auth/BUILD @@ -29,7 +29,6 @@ go_test( "//pkg/apis/rbac:go_default_library", "//pkg/auth/authorizer/abac:go_default_library", "//pkg/auth/nodeidentifier:go_default_library", - "//pkg/bootstrap/api:go_default_library", "//pkg/client/clientset_generated/internalclientset:go_default_library", "//pkg/client/informers/informers_generated/internalversion:go_default_library", "//pkg/features:go_default_library", @@ -74,6 +73,7 @@ go_test( "//vendor/k8s.io/apiserver/plugin/pkg/authenticator/token/tokentest:go_default_library", "//vendor/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook:go_default_library", "//vendor/k8s.io/client-go/rest:go_default_library", + "//vendor/k8s.io/client-go/tools/bootstrap/token/api:go_default_library", "//vendor/k8s.io/client-go/tools/clientcmd/api/v1:go_default_library", "//vendor/k8s.io/client-go/transport:go_default_library", ],