Documentation ¶
Overview ¶
Package controlplane contains code for setting up and running Primaza control plane
Index ¶
- func DeleteServiceBindingAndSecretFromNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClaim, ...) error
- func DeleteServiceClassFromNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClass, ...) error
- func PushServiceBinding(ctx context.Context, sc *primazaiov1alpha1.ServiceClaim, secret *corev1.Secret, ...) error
- func PushServiceCatalogToApplicationNamespaces(ctx context.Context, sc primazaiov1alpha1.ServiceCatalog, ...) error
- func PushServiceClassToNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClass, ...) error
- type AgentPermissionsCheckReport
- type AgentPermissionsChecker
- type ClusterEnvironmentState
- type NamespaceType
- type NamespacesBinder
- type NamespacesReconciler
- type NamespacesUnbinder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteServiceBindingAndSecretFromNamespaces ¶
func DeleteServiceBindingAndSecretFromNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClaim, namespaces []string) error
func DeleteServiceClassFromNamespaces ¶
func DeleteServiceClassFromNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClass, namespaces []string) error
func PushServiceBinding ¶
func PushServiceClassToNamespaces ¶
func PushServiceClassToNamespaces(ctx context.Context, cli client.Client, sc primazaiov1alpha1.ServiceClass, namespaces []string) error
Types ¶
type AgentPermissionsCheckReport ¶
type AgentPermissionsCheckReport map[string]authz.NamespacedPermissionsReport
type AgentPermissionsChecker ¶
type AgentPermissionsChecker interface {
TestPermissions(ctx context.Context, namespaces []string) (AgentPermissionsCheckReport, error)
}
func NewAgentAppPermissionsChecker ¶
func NewAgentAppPermissionsChecker(cfg *rest.Config) AgentPermissionsChecker
func NewAgentSvcPermissionsChecker ¶
func NewAgentSvcPermissionsChecker(cfg *rest.Config) AgentPermissionsChecker
type ClusterEnvironmentState ¶
type ClusterEnvironmentState struct { Name string Namespace string ClusterConfig *rest.Config ApplicationNamespaces []string ServiceNamespaces []string AppAgentImage string SvcAgentImage string AppAgentManifest string SvcAgentManifest string AppAgentConfigManifest string SvcAgentConfigManifest string Strategy primazaiov1alpha1.SynchronizationStrategy }
type NamespaceType ¶
type NamespaceType string
const ( ServiceNamespaceType NamespaceType = "service" ApplicationNamespaceType NamespaceType = "application" )
func (NamespaceType) Short ¶
func (t NamespaceType) Short() string
type NamespacesBinder ¶
type NamespacesBinder interface {
BindNamespaces(ctx context.Context, ceName string, ceNamespace string, namespaces []string) error
}
func NewApplicationNamespacesBinder ¶
func NewApplicationNamespacesBinder( primazaClient client.Client, workerClient *kubernetes.Clientset, agentManifest string, agentImage string, agentConfig string, strategy primazaiov1alpha1.SynchronizationStrategy, ) NamespacesBinder
func NewServiceNamespacesBinder ¶
func NewServiceNamespacesBinder( primazaClient client.Client, workerClient *kubernetes.Clientset, agentManifest string, agentImage string, agentConfig string, strategy primazaiov1alpha1.SynchronizationStrategy, ) NamespacesBinder
type NamespacesReconciler ¶
func NewNamespaceReconciler ¶
func NewNamespaceReconciler(e ClusterEnvironmentState) (NamespacesReconciler, error)
type NamespacesUnbinder ¶
type NamespacesUnbinder interface {
UnbindNamespaces(context.Context, string, string, []string) error
}
func NewApplicationNamespacesUnbinder ¶
func NewApplicationNamespacesUnbinder(primazaClient client.Client, workerClient *kubernetes.Clientset, deploymentManifest, configMapManifest string) NamespacesUnbinder
func NewServiceNamespacesUnbinder ¶
func NewServiceNamespacesUnbinder(primazaClient client.Client, workerClient *kubernetes.Clientset, deploymentManifest, configMapManifest string) NamespacesUnbinder
Click to show internal directories.
Click to hide internal directories.