diff --git a/cmd/controller-manager/app/options/BUILD b/cmd/controller-manager/app/options/BUILD index f567e0aaae9..12bb664efbd 100644 --- a/cmd/controller-manager/app/options/BUILD +++ b/cmd/controller-manager/app/options/BUILD @@ -12,12 +12,12 @@ go_library( importpath = "k8s.io/kubernetes/cmd/controller-manager/app/options", visibility = ["//visibility:public"], deps = [ - "//pkg/client/leaderelectionconfig:go_default_library", "//pkg/controller/apis/config:go_default_library", "//pkg/controller/service/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", "//staging/src/k8s.io/component-base/cli/flag:go_default_library", "//staging/src/k8s.io/component-base/config:go_default_library", + "//staging/src/k8s.io/component-base/config/options:go_default_library", "//vendor/github.com/spf13/pflag:go_default_library", ], ) diff --git a/cmd/controller-manager/app/options/generic.go b/cmd/controller-manager/app/options/generic.go index 7488ea34b9c..aff299a1961 100644 --- a/cmd/controller-manager/app/options/generic.go +++ b/cmd/controller-manager/app/options/generic.go @@ -22,7 +22,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" cliflag "k8s.io/component-base/cli/flag" - "k8s.io/kubernetes/pkg/client/leaderelectionconfig" + "k8s.io/component-base/config/options" kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) @@ -62,7 +62,7 @@ func (o *GenericControllerManagerConfigurationOptions) AddFlags(fss *cliflag.Nam "named 'foo', '-foo' disables the controller named 'foo'.\nAll controllers: %s\nDisabled-by-default controllers: %s", strings.Join(allControllers, ", "), strings.Join(disabledByDefaultControllers, ", "))) - leaderelectionconfig.BindFlags(&o.LeaderElection, genericfs) + options.BindLeaderElectionFlags(&o.LeaderElection, genericfs) } // ApplyTo fills up generic config with options. diff --git a/cmd/kube-scheduler/app/options/BUILD b/cmd/kube-scheduler/app/options/BUILD index 1e1fe299ffe..8c38b179814 100644 --- a/cmd/kube-scheduler/app/options/BUILD +++ b/cmd/kube-scheduler/app/options/BUILD @@ -12,7 +12,6 @@ go_library( visibility = ["//visibility:public"], deps = [ "//cmd/kube-scheduler/app/config:go_default_library", - "//pkg/client/leaderelectionconfig:go_default_library", "//pkg/scheduler:go_default_library", "//pkg/scheduler/algorithmprovider:go_default_library", "//pkg/scheduler/apis/config:go_default_library", @@ -38,6 +37,7 @@ go_library( "//staging/src/k8s.io/client-go/tools/record:go_default_library", "//staging/src/k8s.io/component-base/cli/flag:go_default_library", "//staging/src/k8s.io/component-base/config:go_default_library", + "//staging/src/k8s.io/component-base/config/options:go_default_library", "//staging/src/k8s.io/component-base/config/v1alpha1:go_default_library", "//staging/src/k8s.io/component-base/metrics:go_default_library", "//staging/src/k8s.io/kube-scheduler/config/v1alpha2:go_default_library", diff --git a/cmd/kube-scheduler/app/options/options.go b/cmd/kube-scheduler/app/options/options.go index cc3d0c30b3e..9d1ee11be9e 100644 --- a/cmd/kube-scheduler/app/options/options.go +++ b/cmd/kube-scheduler/app/options/options.go @@ -39,12 +39,12 @@ import ( "k8s.io/client-go/tools/record" cliflag "k8s.io/component-base/cli/flag" componentbaseconfig "k8s.io/component-base/config" + "k8s.io/component-base/config/options" configv1alpha1 "k8s.io/component-base/config/v1alpha1" "k8s.io/component-base/metrics" "k8s.io/klog" kubeschedulerconfigv1alpha2 "k8s.io/kube-scheduler/config/v1alpha2" schedulerappconfig "k8s.io/kubernetes/cmd/kube-scheduler/app/config" - "k8s.io/kubernetes/pkg/client/leaderelectionconfig" "k8s.io/kubernetes/pkg/scheduler" kubeschedulerconfig "k8s.io/kubernetes/pkg/scheduler/apis/config" kubeschedulerscheme "k8s.io/kubernetes/pkg/scheduler/apis/config/scheme" @@ -158,7 +158,7 @@ func (o *Options) Flags() (nfs cliflag.NamedFlagSets) { o.Authorization.AddFlags(nfs.FlagSet("authorization")) o.Deprecated.AddFlags(nfs.FlagSet("deprecated"), &o.ComponentConfig) - leaderelectionconfig.BindFlags(&o.ComponentConfig.LeaderElection, nfs.FlagSet("leader election")) + options.BindLeaderElectionFlags(&o.ComponentConfig.LeaderElection, nfs.FlagSet("leader election")) utilfeature.DefaultMutableFeatureGate.AddFlag(nfs.FlagSet("feature gate")) o.Metrics.AddFlags(nfs.FlagSet("metrics")) diff --git a/pkg/BUILD b/pkg/BUILD index dd369f59ade..6cccf2081f9 100644 --- a/pkg/BUILD +++ b/pkg/BUILD @@ -52,7 +52,6 @@ filegroup( "//pkg/auth/nodeidentifier:all-srcs", "//pkg/capabilities:all-srcs", "//pkg/client/conditions:all-srcs", - "//pkg/client/leaderelectionconfig:all-srcs", "//pkg/client/testdata:all-srcs", "//pkg/client/tests:all-srcs", "//pkg/cloudprovider:all-srcs", diff --git a/staging/src/k8s.io/component-base/config/BUILD b/staging/src/k8s.io/component-base/config/BUILD index 25c1c281586..b92f4e0fd88 100644 --- a/staging/src/k8s.io/component-base/config/BUILD +++ b/staging/src/k8s.io/component-base/config/BUILD @@ -24,6 +24,7 @@ filegroup( name = "all-srcs", srcs = [ ":package-srcs", + "//staging/src/k8s.io/component-base/config/options:all-srcs", "//staging/src/k8s.io/component-base/config/testing:all-srcs", "//staging/src/k8s.io/component-base/config/v1alpha1:all-srcs", "//staging/src/k8s.io/component-base/config/validation:all-srcs", diff --git a/pkg/client/leaderelectionconfig/BUILD b/staging/src/k8s.io/component-base/config/options/BUILD similarity index 58% rename from pkg/client/leaderelectionconfig/BUILD rename to staging/src/k8s.io/component-base/config/options/BUILD index a5d29965c3b..fcffc62ced8 100644 --- a/pkg/client/leaderelectionconfig/BUILD +++ b/staging/src/k8s.io/component-base/config/options/BUILD @@ -1,14 +1,11 @@ -package(default_visibility = ["//visibility:public"]) - -load( - "@io_bazel_rules_go//go:def.bzl", - "go_library", -) +load("@io_bazel_rules_go//go:def.bzl", "go_library") go_library( name = "go_default_library", - srcs = ["config.go"], - importpath = "k8s.io/kubernetes/pkg/client/leaderelectionconfig", + srcs = ["leaderelectionconfig.go"], + importmap = "k8s.io/kubernetes/vendor/k8s.io/component-base/config/options", + importpath = "k8s.io/component-base/config/options", + visibility = ["//visibility:public"], deps = [ "//staging/src/k8s.io/component-base/config:go_default_library", "//vendor/github.com/spf13/pflag:go_default_library", @@ -26,4 +23,5 @@ filegroup( name = "all-srcs", srcs = [":package-srcs"], tags = ["automanaged"], + visibility = ["//visibility:public"], ) diff --git a/pkg/client/leaderelectionconfig/config.go b/staging/src/k8s.io/component-base/config/options/leaderelectionconfig.go similarity index 91% rename from pkg/client/leaderelectionconfig/config.go rename to staging/src/k8s.io/component-base/config/options/leaderelectionconfig.go index aaefafa3722..6bf4ed23796 100644 --- a/pkg/client/leaderelectionconfig/config.go +++ b/staging/src/k8s.io/component-base/config/options/leaderelectionconfig.go @@ -14,15 +14,15 @@ See the License for the specific language governing permissions and limitations under the License. */ -package leaderelectionconfig +package options import ( "github.com/spf13/pflag" - componentbaseconfig "k8s.io/component-base/config" + "k8s.io/component-base/config" ) -// BindFlags binds the LeaderElectionConfiguration struct fields to a flagset -func BindFlags(l *componentbaseconfig.LeaderElectionConfiguration, fs *pflag.FlagSet) { +// BindLeaderElectionFlags binds the LeaderElectionConfiguration struct fields to a flagset +func BindLeaderElectionFlags(l *config.LeaderElectionConfiguration, fs *pflag.FlagSet) { fs.BoolVar(&l.LeaderElect, "leader-elect", l.LeaderElect, ""+ "Start a leader election client and gain leadership before "+ "executing the main loop. Enable this when running replicated "+ diff --git a/vendor/modules.txt b/vendor/modules.txt index 99996b4ff90..b549923b448 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1618,6 +1618,7 @@ k8s.io/component-base/cli/flag k8s.io/component-base/cli/globalflag k8s.io/component-base/codec k8s.io/component-base/config +k8s.io/component-base/config/options k8s.io/component-base/config/testing k8s.io/component-base/config/v1alpha1 k8s.io/component-base/config/validation