Documentation ¶
Index ¶
Constants ¶
View Source
const ( ControllerName = "tmc-virtual-syncer-api-reconciler-" IndexSyncTargetsByExport = ControllerName + "ByExport" IndexAPIExportsByAPIResourceSchema = ControllerName + "ByAPIResourceSchema" )
Variables ¶
This section is empty.
Functions ¶
func IndexAPIExportsByAPIResourceSchemas ¶
IndexAPIExportsByAPIResourceSchemas is an index function that maps an APIExport to its spec.latestResourceSchemas.
Types ¶
type APIReconciler ¶
type APIReconciler struct {
// contains filtered or unexported fields
}
APIReconciler is a controller watching APIExports, APIResourceSchemas and SyncTargets, and updates the API definitions driving the virtual workspace.
func NewAPIReconciler ¶
func NewAPIReconciler( virtualWorkspaceName string, syncTargetInformer workloadv1alpha1informers.SyncTargetClusterInformer, apiResourceSchemaInformer apisv1alpha1informers.APIResourceSchemaClusterInformer, apiExportInformer apisv1alpha1informers.APIExportClusterInformer, createAPIDefinition CreateAPIDefinitionFunc, allowedAPIfilter AllowedAPIfilterFunc, ) (*APIReconciler, error)
func (*APIReconciler) GetAPIDefinitionSet ¶
func (c *APIReconciler) GetAPIDefinitionSet(_ context.Context, key dynamiccontext.APIDomainKey) (apidefinition.APIDefinitionSet, bool, error)
func (*APIReconciler) ShutDown ¶
func (c *APIReconciler) ShutDown()
func (*APIReconciler) Start ¶
func (c *APIReconciler) Start(ctx context.Context)
type AllowedAPIfilterFunc ¶
type AllowedAPIfilterFunc func(apiGroupResource schema.GroupResource) bool
type CreateAPIDefinitionFunc ¶
type CreateAPIDefinitionFunc func(syncTargetWorkspace logicalcluster.Name, syncTargetName string, apiResourceSchema *apisv1alpha1.APIResourceSchema, version string, identityHash string) (apidefinition.APIDefinition, error)
Click to show internal directories.
Click to hide internal directories.