Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterMultiClusterProvider ¶
RegisterMultiClusterProvider registers a multiclusterprovider.Factory by name. This is expected to happen during app startup.
Types ¶
type Factory ¶
Factory is a function that returns a multiclusterprovider.Interface. The config parameter provides an io.Reader handler to the factory in order to load specific configurations. If no configuration is provided the parameter is nil.
type Interface ¶
type Interface interface { // LoadBalancer returns a MultiClusterIngress balancer interface, also returns true // if the interface is supported, false otherwise. LoadBalancer() (LoadBalancer, bool) // MCSLoadBalancer returns a MultiClusterService balancer interface, also returns true // if the interface is supported, false otherwise. MCSLoadBalancer() (MCSLoadBalancer, bool) // ProviderName returns the cloud provider ID. ProviderName() string }
Interface is an abstract, pluggable interface for multcluster provider.
type LoadBalancer ¶
type LoadBalancer interface { // GetLoadBalancer return whether the specified load balancer exists, and if so, what its status is. GetLoadBalancer(ctx context.Context, mci *networkingv1alpha1.MultiClusterIngress) (status *networkingv1.IngressLoadBalancerStatus, exist bool, err error) // EnsureLoadBalancer creates a new load balancer. EnsureLoadBalancer(ctx context.Context, mci *networkingv1alpha1.MultiClusterIngress) (status *networkingv1.IngressLoadBalancerStatus, err error) // UpdateLoadBalancer updates the specified load balancer. UpdateLoadBalancer(ctx context.Context, mci *networkingv1alpha1.MultiClusterIngress) (status *networkingv1.IngressLoadBalancerStatus, err error) // EnsureLoadBalancerDeleted deletes the specified load balancer if it exists. EnsureLoadBalancerDeleted(ctx context.Context, mci *networkingv1alpha1.MultiClusterIngress) error }
LoadBalancer is an abstract, pluggable interface for MultiClusterIngress load balancers.
type MCSLoadBalancer ¶
type MCSLoadBalancer interface { // GetMCSLoadBalancer return whether the specified load balancer exists, and if so, what its status is. GetMCSLoadBalancer(ctx context.Context, mcs *networkingv1alpha1.MultiClusterService) (status *corev1.LoadBalancerStatus, exist bool, err error) // EnsureMCSLoadBalancer creates a new load balancer. EnsureMCSLoadBalancer(ctx context.Context, mcs *networkingv1alpha1.MultiClusterService) (status *corev1.LoadBalancerStatus, err error) // UpdateMCSLoadBalancer updates the specified load balancer. UpdateMCSLoadBalancer(ctx context.Context, mcs *networkingv1alpha1.MultiClusterService) (status *corev1.LoadBalancerStatus, err error) // EnsureMCSLoadBalancerDeleted deletes the specified load balancer if it exists. EnsureMCSLoadBalancerDeleted(ctx context.Context, mcs *networkingv1alpha1.MultiClusterService) error }
MCSLoadBalancer is an abstract, pluggable interface for MultiClusterService load balancers.
Directories ¶
Path | Synopsis |
---|---|
cmd
|
|
Package fake is a test-double implementation of multiclusterprovider.Interface.
|
Package fake is a test-double implementation of multiclusterprovider.Interface. |
pkg
|
|
Click to show internal directories.
Click to hide internal directories.