2023-10-26 14:04:15 +00:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
|
|
|
// SPDX-License-Identifier: BUSL-1.1
|
|
|
|
|
|
|
|
package multicluster
|
|
|
|
|
|
|
|
import (
|
2023-11-10 01:57:53 +00:00
|
|
|
"github.com/hashicorp/consul/internal/controller"
|
|
|
|
"github.com/hashicorp/consul/internal/multicluster/internal/controllers"
|
2024-01-08 06:25:52 +00:00
|
|
|
exportedServicesSamenessGroupExpander "github.com/hashicorp/consul/internal/multicluster/internal/controllers/exportedservices/expander"
|
2023-10-26 14:04:15 +00:00
|
|
|
"github.com/hashicorp/consul/internal/multicluster/internal/types"
|
|
|
|
"github.com/hashicorp/consul/internal/resource"
|
|
|
|
)
|
|
|
|
|
|
|
|
var (
|
|
|
|
// API Group Information
|
|
|
|
APIGroup = types.GroupName
|
|
|
|
VersionV2Beta1 = types.VersionV2Beta1
|
|
|
|
CurrentVersion = types.CurrentVersion
|
|
|
|
)
|
|
|
|
|
|
|
|
// RegisterTypes adds all resource types within the "multicluster" API group
|
|
|
|
// to the given type registry
|
|
|
|
func RegisterTypes(r resource.Registry) {
|
|
|
|
types.Register(r)
|
|
|
|
}
|
2023-11-10 01:57:53 +00:00
|
|
|
|
2024-01-08 06:25:52 +00:00
|
|
|
type ControllerDependencies = controllers.Dependencies
|
|
|
|
|
|
|
|
func DefaultControllerDependencies() ControllerDependencies {
|
|
|
|
return ControllerDependencies{
|
|
|
|
ExportedServicesSamenessGroupsExpander: exportedServicesSamenessGroupExpander.New(),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-11-10 01:57:53 +00:00
|
|
|
// RegisterControllers registers controllers for the multicluster types with
|
|
|
|
// the given controller Manager.
|
2024-01-08 06:25:52 +00:00
|
|
|
func RegisterControllers(mgr *controller.Manager, deps ControllerDependencies) {
|
|
|
|
controllers.Register(mgr, deps)
|
2023-11-10 01:57:53 +00:00
|
|
|
}
|