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
This commit is contained in:
Kubernetes Submit Queue 2017-04-17 11:18:00 -07:00 committed by GitHub
commit 190a0cab89
8 changed files with 24 additions and 26 deletions

View File

@ -30,8 +30,8 @@ go_library(
"//federation/pkg/federation-controller/ingress:go_default_library",
"//federation/pkg/federation-controller/namespace: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/sync:go_default_library",
"//pkg/util/configz:go_default_library",
"//pkg/version:go_default_library",
"//vendor/github.com/golang/glog:go_default_library",

View File

@ -44,8 +44,8 @@ import (
ingresscontroller "k8s.io/kubernetes/federation/pkg/federation-controller/ingress"
namespacecontroller "k8s.io/kubernetes/federation/pkg/federation-controller/namespace"
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"
synccontroller "k8s.io/kubernetes/federation/pkg/federation-controller/sync"
"k8s.io/kubernetes/pkg/util/configz"
"k8s.io/kubernetes/pkg/version"
@ -162,8 +162,7 @@ func StartControllers(s *options.CMServer, restClientCfg *restclient.Config) err
for kind, federatedType := range federatedtypes.FederatedTypes() {
if controllerEnabled(s.Controllers, serverResources, federatedType.ControllerName, federatedType.RequiredResources, true) {
// TODO the generic controller doesn't belong in the secretcontroller package
secretcontroller.StartFederationSyncController(kind, federatedType.AdapterFactory, restClientCfg, stopChan, minimizeLatency)
synccontroller.StartFederationSyncController(kind, federatedType.AdapterFactory, restClientCfg, stopChan, minimizeLatency)
}
}

View File

@ -31,8 +31,8 @@ filegroup(
"//federation/pkg/federation-controller/ingress:all-srcs",
"//federation/pkg/federation-controller/namespace: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/sync:all-srcs",
"//federation/pkg/federation-controller/util:all-srcs",
],
tags = ["automanaged"],

View File

@ -10,7 +10,7 @@ load(
go_library(
name = "go_default_library",
srcs = ["secret_controller.go"],
srcs = ["controller.go"],
tags = ["automanaged"],
deps = [
"//federation/apis/federation/v1beta1:go_default_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(
name = "go_default_test",
srcs = ["secret_controller_test.go"],
@ -59,16 +72,3 @@ go_test(
"//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"],
)

View File

@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
package secret
package sync
import (
"fmt"
@ -207,7 +207,7 @@ func (s *FederationSyncController) minimizeLatency() {
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 {
meta := s.adapter.ObjectMeta(obj)
for i := range meta.Finalizers {

View File

@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
package secret
package sync
import (
"fmt"

View File

@ -25,7 +25,7 @@ go_library(
"//federation/pkg/federatedtypes:go_default_library",
"//federation/pkg/federatedtypes/crudtester: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/master:go_default_library",
"//test/integration/framework:go_default_library",

View File

@ -21,7 +21,7 @@ import (
restclient "k8s.io/client-go/rest"
"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.
@ -34,8 +34,7 @@ func NewControllerFixture(t *testing.T, kind string, adapterFactory federatedtyp
f := &ControllerFixture{
stopChan: make(chan struct{}),
}
// TODO the generic controller doesn't belong in the secretcontroller package
secretcontroller.StartFederationSyncController(kind, adapterFactory, config, f.stopChan, true)
synccontroller.StartFederationSyncController(kind, adapterFactory, config, f.stopChan, true)
return f
}