Commit 190a0cab authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #44217 from marun/fed-move-sync-controller

Automatic merge from submit-queue (batch tested with PRs 44560, 44217) [Federation] Move sync controller This PR moves the sync controller to its own package in support of parallel efforts to use it for more types than just secrets. The secret controller unit tests have been retained for now. Once good unit test coverage exists for the sync controller, the existing secret controller unit testing can go away. cc: @kubernetes/sig-federation-pr-reviews @perotinus
parents 88b35f98 cca465e3
...@@ -30,8 +30,8 @@ go_library( ...@@ -30,8 +30,8 @@ go_library(
"//federation/pkg/federation-controller/ingress:go_default_library", "//federation/pkg/federation-controller/ingress:go_default_library",
"//federation/pkg/federation-controller/namespace:go_default_library", "//federation/pkg/federation-controller/namespace:go_default_library",
"//federation/pkg/federation-controller/replicaset:go_default_library", "//federation/pkg/federation-controller/replicaset:go_default_library",
"//federation/pkg/federation-controller/secret:go_default_library",
"//federation/pkg/federation-controller/service:go_default_library", "//federation/pkg/federation-controller/service:go_default_library",
"//federation/pkg/federation-controller/sync:go_default_library",
"//pkg/util/configz:go_default_library", "//pkg/util/configz:go_default_library",
"//pkg/version:go_default_library", "//pkg/version:go_default_library",
"//vendor/github.com/golang/glog:go_default_library", "//vendor/github.com/golang/glog:go_default_library",
......
...@@ -44,8 +44,8 @@ import ( ...@@ -44,8 +44,8 @@ import (
ingresscontroller "k8s.io/kubernetes/federation/pkg/federation-controller/ingress" ingresscontroller "k8s.io/kubernetes/federation/pkg/federation-controller/ingress"
namespacecontroller "k8s.io/kubernetes/federation/pkg/federation-controller/namespace" namespacecontroller "k8s.io/kubernetes/federation/pkg/federation-controller/namespace"
replicasetcontroller "k8s.io/kubernetes/federation/pkg/federation-controller/replicaset" replicasetcontroller "k8s.io/kubernetes/federation/pkg/federation-controller/replicaset"
secretcontroller "k8s.io/kubernetes/federation/pkg/federation-controller/secret"
servicecontroller "k8s.io/kubernetes/federation/pkg/federation-controller/service" servicecontroller "k8s.io/kubernetes/federation/pkg/federation-controller/service"
synccontroller "k8s.io/kubernetes/federation/pkg/federation-controller/sync"
"k8s.io/kubernetes/pkg/util/configz" "k8s.io/kubernetes/pkg/util/configz"
"k8s.io/kubernetes/pkg/version" "k8s.io/kubernetes/pkg/version"
...@@ -162,8 +162,7 @@ func StartControllers(s *options.CMServer, restClientCfg *restclient.Config) err ...@@ -162,8 +162,7 @@ func StartControllers(s *options.CMServer, restClientCfg *restclient.Config) err
for kind, federatedType := range federatedtypes.FederatedTypes() { for kind, federatedType := range federatedtypes.FederatedTypes() {
if controllerEnabled(s.Controllers, serverResources, federatedType.ControllerName, federatedType.RequiredResources, true) { if controllerEnabled(s.Controllers, serverResources, federatedType.ControllerName, federatedType.RequiredResources, true) {
// TODO the generic controller doesn't belong in the secretcontroller package synccontroller.StartFederationSyncController(kind, federatedType.AdapterFactory, restClientCfg, stopChan, minimizeLatency)
secretcontroller.StartFederationSyncController(kind, federatedType.AdapterFactory, restClientCfg, stopChan, minimizeLatency)
} }
} }
......
...@@ -31,8 +31,8 @@ filegroup( ...@@ -31,8 +31,8 @@ filegroup(
"//federation/pkg/federation-controller/ingress:all-srcs", "//federation/pkg/federation-controller/ingress:all-srcs",
"//federation/pkg/federation-controller/namespace:all-srcs", "//federation/pkg/federation-controller/namespace:all-srcs",
"//federation/pkg/federation-controller/replicaset:all-srcs", "//federation/pkg/federation-controller/replicaset:all-srcs",
"//federation/pkg/federation-controller/secret:all-srcs",
"//federation/pkg/federation-controller/service:all-srcs", "//federation/pkg/federation-controller/service:all-srcs",
"//federation/pkg/federation-controller/sync:all-srcs",
"//federation/pkg/federation-controller/util:all-srcs", "//federation/pkg/federation-controller/util:all-srcs",
], ],
tags = ["automanaged"], tags = ["automanaged"],
......
...@@ -10,7 +10,7 @@ load( ...@@ -10,7 +10,7 @@ load(
go_library( go_library(
name = "go_default_library", name = "go_default_library",
srcs = ["secret_controller.go"], srcs = ["controller.go"],
tags = ["automanaged"], tags = ["automanaged"],
deps = [ deps = [
"//federation/apis/federation/v1beta1:go_default_library", "//federation/apis/federation/v1beta1:go_default_library",
...@@ -36,6 +36,19 @@ go_library( ...@@ -36,6 +36,19 @@ go_library(
], ],
) )
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
)
go_test( go_test(
name = "go_default_test", name = "go_default_test",
srcs = ["secret_controller_test.go"], srcs = ["secret_controller_test.go"],
...@@ -59,16 +72,3 @@ go_test( ...@@ -59,16 +72,3 @@ go_test(
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
], ],
) )
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
)
...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and ...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
package secret package sync
import ( import (
"fmt" "fmt"
...@@ -207,7 +207,7 @@ func (s *FederationSyncController) minimizeLatency() { ...@@ -207,7 +207,7 @@ func (s *FederationSyncController) minimizeLatency() {
s.updateTimeout = 5 * time.Second s.updateTimeout = 5 * time.Second
} }
// Returns true if the given object has the given finalizer in its ObjectMeta. // hasFinalizerFunc returns true if the given object has the given finalizer in its ObjectMeta.
func (s *FederationSyncController) hasFinalizerFunc(obj pkgruntime.Object, finalizer string) bool { func (s *FederationSyncController) hasFinalizerFunc(obj pkgruntime.Object, finalizer string) bool {
meta := s.adapter.ObjectMeta(obj) meta := s.adapter.ObjectMeta(obj)
for i := range meta.Finalizers { for i := range meta.Finalizers {
......
...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and ...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
package secret package sync
import ( import (
"fmt" "fmt"
......
...@@ -25,7 +25,7 @@ go_library( ...@@ -25,7 +25,7 @@ go_library(
"//federation/pkg/federatedtypes:go_default_library", "//federation/pkg/federatedtypes:go_default_library",
"//federation/pkg/federatedtypes/crudtester:go_default_library", "//federation/pkg/federatedtypes/crudtester:go_default_library",
"//federation/pkg/federation-controller/cluster:go_default_library", "//federation/pkg/federation-controller/cluster:go_default_library",
"//federation/pkg/federation-controller/secret:go_default_library", "//federation/pkg/federation-controller/sync:go_default_library",
"//pkg/client/clientset_generated/clientset:go_default_library", "//pkg/client/clientset_generated/clientset:go_default_library",
"//pkg/master:go_default_library", "//pkg/master:go_default_library",
"//test/integration/framework:go_default_library", "//test/integration/framework:go_default_library",
......
...@@ -21,7 +21,7 @@ import ( ...@@ -21,7 +21,7 @@ import (
restclient "k8s.io/client-go/rest" restclient "k8s.io/client-go/rest"
"k8s.io/kubernetes/federation/pkg/federatedtypes" "k8s.io/kubernetes/federation/pkg/federatedtypes"
secretcontroller "k8s.io/kubernetes/federation/pkg/federation-controller/secret" synccontroller "k8s.io/kubernetes/federation/pkg/federation-controller/sync"
) )
// ControllerFixture manages a federation controller for testing. // ControllerFixture manages a federation controller for testing.
...@@ -34,8 +34,7 @@ func NewControllerFixture(t *testing.T, kind string, adapterFactory federatedtyp ...@@ -34,8 +34,7 @@ func NewControllerFixture(t *testing.T, kind string, adapterFactory federatedtyp
f := &ControllerFixture{ f := &ControllerFixture{
stopChan: make(chan struct{}), stopChan: make(chan struct{}),
} }
// TODO the generic controller doesn't belong in the secretcontroller package synccontroller.StartFederationSyncController(kind, adapterFactory, config, f.stopChan, true)
secretcontroller.StartFederationSyncController(kind, adapterFactory, config, f.stopChan, true)
return f return f
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment