Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func StartFederationSyncController ¶
func StartFederationSyncController(typeConfig typeconfig.Interface, kubeConfig *restclient.Config, fedNamespace, clusterNamespace, targetNamespace string, stopChan <-chan struct{}, minimizeLatency bool) error
StartFederationSyncController starts a new sync controller for a type config
Types ¶
type FederationSyncController ¶
type FederationSyncController struct {
// contains filtered or unexported fields
}
FederationSyncController synchronizes the state of a federated type to clusters that are members of the federation.
func (*FederationSyncController) Run ¶
func (s *FederationSyncController) Run(stopChan <-chan struct{})
type PropagatedVersionManager ¶
type PropagatedVersionManager interface {
// Sync retrieves propagated versions from the api and loads it into memory
Sync(stopChan <-chan struct{})
// HasSynced indicates whether the manager's in-memory state has been synced with the api
HasSynced() bool
// Get retrieves a mapping of cluster names to versions for the given template and override
Get(template, override *unstructured.Unstructured) map[string]string
// Update ensures that the propagated version for the given template and override is represented in-memory and in the api
Update(template, override *unstructured.Unstructured, selectedClusters []string, clusterVersions map[string]string) error
// Delete removes the named propagated version from in-memory and the api
Delete(qualifiedName util.QualifiedName) error
}
func NewPropagatedVersionManager ¶
func NewPropagatedVersionManager(typeConfig typeconfig.Interface, client fedclientset.Interface, namespace string) PropagatedVersionManager
Click to show internal directories.
Click to hide internal directories.