Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Register ¶
func Register(name configv1.PlatformType, factoryFunc Factory)
Types ¶
type CloudClient ¶
type CloudClient interface { /* APIScheme */ // EnsureAdminAPIDNS ensures there's a rh-api (for example) alias to the Service for the APIScheme // May return loadBalancerNotFound or other specific errors EnsureAdminAPIDNS(context.Context, client.Client, *cloudingressv1alpha1.APIScheme, *corev1.Service) error // DeleteAdminAPIDNS will ensure that the A record for the admin API (rh-api) is removed DeleteAdminAPIDNS(context.Context, client.Client, *cloudingressv1alpha1.APIScheme, *corev1.Service) error /* Publishing Strategy */ // SetDefaultAPIPrivate ensures that the default API is private, per user configure SetDefaultAPIPrivate(context.Context, client.Client, *cloudingressv1alpha1.PublishingStrategy) error // SetDefaultAPIPublic ensures that the default API is public, per user configure SetDefaultAPIPublic(context.Context, client.Client, *cloudingressv1alpha1.PublishingStrategy) error // Perform healthcheck Healthcheck(context.Context, client.Client) error }
CloudClient defines the interface for a cloud agnostic implementation For mocking: mockgen -source=pkg/cloudclient/cloudclient.go -destination=pkg/cloudclient/mock_cloudclient/mock_cloudclient.go
func GetClientFor ¶
func GetClientFor(kclient client.Client, cloudID configv1.PlatformType) CloudClient
GetClientFor returns the CloudClient for the given cloud provider, identified by the provider's ID, eg aws for AWS's cloud client, gcp for GCP's cloud client.
type Factory ¶
type Factory func(client.Client) CloudClient
Directories ¶
Path | Synopsis |
---|---|
Package mock_cloudclient is a generated GoMock package.
|
Package mock_cloudclient is a generated GoMock package. |
Click to show internal directories.
Click to hide internal directories.