Documentation ¶
Index ¶
- Constants
- func IsNotFoundError(err error) bool
- type Compute
- type ComputeClient
- func (c *ComputeClient) CreateServerGroup(name, policy string) (*servergroups.ServerGroup, error)
- func (c *ComputeClient) DeleteServerGroup(id string) error
- func (c *ComputeClient) GetServerGroup(id string) (*servergroups.ServerGroup, error)
- func (c *ComputeClient) ListServerGroups() ([]servergroups.ServerGroup, error)
- type DNS
- type DNSClient
- type Factory
- type FactoryFactory
- type FactoryFactoryFunc
- type Networking
- type NetworkingClient
- type OpenstackClientFactory
- func (oc *OpenstackClientFactory) Compute(options ...Option) (Compute, error)
- func (oc *OpenstackClientFactory) DNS(options ...Option) (DNS, error)
- func (oc *OpenstackClientFactory) Networking(options ...Option) (Networking, error)
- func (oc *OpenstackClientFactory) Storage(options ...Option) (Storage, error)
- type Option
- type Storage
- type StorageClient
Constants ¶
const ( // ServerGroupPolicyAntiAffinity is a constant for the anti-affinity server group policy. ServerGroupPolicyAntiAffinity = "anti-affinity" // ServerGroupPolicyAffinity is a constant for the affinity server group policy. ServerGroupPolicyAffinity = "affinity" )
Variables ¶
This section is empty.
Functions ¶
func IsNotFoundError ¶ added in v1.14.0
IsNotFoundError checks if an error returned by OpenStack is caused by HTTP 404 status code.
Types ¶
type Compute ¶ added in v1.14.0
type Compute interface { CreateServerGroup(name, policy string) (*servergroups.ServerGroup, error) GetServerGroup(id string) (*servergroups.ServerGroup, error) DeleteServerGroup(id string) error ListServerGroups() ([]servergroups.ServerGroup, error) }
Compute describes the operations of a client interacting with OpenStack's Compute service.
type ComputeClient ¶ added in v1.14.0
type ComputeClient struct {
// contains filtered or unexported fields
}
ComputeClient is a client for the Nova service.
func (*ComputeClient) CreateServerGroup ¶ added in v1.14.0
func (c *ComputeClient) CreateServerGroup(name, policy string) (*servergroups.ServerGroup, error)
CreateServerGroup creates a server group with the specified policy.
func (*ComputeClient) DeleteServerGroup ¶ added in v1.14.0
func (c *ComputeClient) DeleteServerGroup(id string) error
DeleteServerGroup deletes the server group with the specified id. It returns nil if the server group could not be found.
func (*ComputeClient) GetServerGroup ¶ added in v1.14.0
func (c *ComputeClient) GetServerGroup(id string) (*servergroups.ServerGroup, error)
GetServerGroup retrieves the server group with the specified id.
func (*ComputeClient) ListServerGroups ¶ added in v1.14.0
func (c *ComputeClient) ListServerGroups() ([]servergroups.ServerGroup, error)
ListServerGroups retrieves the list of server groups.
type DNS ¶ added in v1.21.0
type DNS interface { GetZones(ctx context.Context) (map[string]string, error) CreateOrUpdateRecordSet(ctx context.Context, zoneID, name, recordType string, records []string, ttl int) error DeleteRecordSet(ctx context.Context, zoneID, name, recordType string) error }
DNS describes the operations of a client interacting with OpenStack's DNS service.
type DNSClient ¶ added in v1.21.0
type DNSClient struct {
// contains filtered or unexported fields
}
DNSClient is a client for the Designate service.
func (*DNSClient) CreateOrUpdateRecordSet ¶ added in v1.21.0
func (c *DNSClient) CreateOrUpdateRecordSet(ctx context.Context, zoneID, name, recordType string, records []string, ttl int) error
CreateOrUpdateRecordSet creates or updates the recordset with the given name, record type, records, and ttl in the zone with the given zone ID.
func (*DNSClient) DeleteRecordSet ¶ added in v1.21.0
DeleteRecordSet deletes the recordset with the given name and record type in the zone with the given zone ID.
type Factory ¶ added in v1.14.0
type Factory interface { Compute(options ...Option) (Compute, error) Storage(options ...Option) (Storage, error) DNS(options ...Option) (DNS, error) Networking(options ...Option) (Networking, error) }
Factory is an interface for constructing OpenStack service clients.
func NewOpenStackClientFromSecretRef ¶ added in v1.14.0
func NewOpenStackClientFromSecretRef(ctx context.Context, c client.Client, secretRef corev1.SecretReference, keyStoneUrl *string) (Factory, error)
NewOpenStackClientFromSecretRef returns a Factory implementation that can be used to create clients for OpenStack services. The credentials are fetched from the Kubernetes secret referenced by <secretRef>.
func NewOpenstackClientFromCredentials ¶ added in v1.14.0
func NewOpenstackClientFromCredentials(credentials *os.Credentials) (Factory, error)
NewOpenstackClientFromCredentials returns a Factory implementation that can be used to create clients for OpenStack services. TODO: respect CloudProfile's requestTimeout for the OpenStack client. see https://github.com/kubernetes/cloud-provider-openstack/blob/c44d941cdb5c7fe651f5cb9191d0af23e266c7cb/pkg/openstack/openstack.go#L257
type FactoryFactory ¶ added in v1.21.0
type FactoryFactory interface { // NewFactory creates a new instance of Factory for the given Openstack credentials. NewFactory(credentials *openstack.Credentials) (Factory, error) }
FactoryFactory creates instances of Factory.
type FactoryFactoryFunc ¶ added in v1.21.0
type FactoryFactoryFunc func(credentials *openstack.Credentials) (Factory, error)
FactoryFactoryFunc is a function that implements FactoryFactory.
func (FactoryFactoryFunc) NewFactory ¶ added in v1.21.0
func (f FactoryFactoryFunc) NewFactory(credentials *openstack.Credentials) (Factory, error)
NewFactory creates a new instance of Factory for the given Openstack credentials.
type Networking ¶ added in v1.21.0
Networking describes the operations of a client interacting with OpenStack's Networking service.
type NetworkingClient ¶ added in v1.21.0
type NetworkingClient struct {
// contains filtered or unexported fields
}
NetworkingClient is a client for the Neutron service.
func (*NetworkingClient) GetExternalNetworkNames ¶ added in v1.21.0
func (c *NetworkingClient) GetExternalNetworkNames(ctx context.Context) ([]string, error)
GetExternalNetworkNames returns a list of all external network names.
type OpenstackClientFactory ¶ added in v1.14.0
type OpenstackClientFactory struct {
// contains filtered or unexported fields
}
OpenstackClientFactory implements a factory that can construct clients for Openstack services.
func (*OpenstackClientFactory) Compute ¶ added in v1.14.0
func (oc *OpenstackClientFactory) Compute(options ...Option) (Compute, error)
Compute returns a Compute client. The client uses Nova v2 API for issuing calls.
func (*OpenstackClientFactory) DNS ¶ added in v1.21.0
func (oc *OpenstackClientFactory) DNS(options ...Option) (DNS, error)
DNS returns a DNS client. The client uses Designate v2 API for issuing calls.
func (*OpenstackClientFactory) Networking ¶ added in v1.21.0
func (oc *OpenstackClientFactory) Networking(options ...Option) (Networking, error)
Networking returns a Networking client. The client uses Neutron v2 API for issuing calls.
type Option ¶ added in v1.14.0
type Option func(opts gophercloud.EndpointOpts) gophercloud.EndpointOpts
Option can be passed to Factory implementations to modify the produced clients.
func WithRegion ¶ added in v1.14.0
WithRegion returns an Option that can modify the region a client targets.
type Storage ¶
type Storage interface { DeleteObjectsWithPrefix(ctx context.Context, container, prefix string) error CreateContainerIfNotExists(ctx context.Context, container string) error DeleteContainerIfExists(ctx context.Context, container string) error }
Storage describes the operations of a client interacting with OpenStack's ObjectStorage service.
type StorageClient ¶
type StorageClient struct {
// contains filtered or unexported fields
}
StorageClient is a client for the Swift service.
func (*StorageClient) CreateContainerIfNotExists ¶
func (s *StorageClient) CreateContainerIfNotExists(ctx context.Context, container string) error
CreateContainerIfNotExists creates the openstack blob container with name <container>. If it already exist, no error is returned.
func (*StorageClient) DeleteContainerIfExists ¶
func (s *StorageClient) DeleteContainerIfExists(ctx context.Context, container string) error
DeleteContainerIfExists deletes the openstack blob container with name <container>. If it does not exist, no error is returned.
func (*StorageClient) DeleteObjectsWithPrefix ¶
func (s *StorageClient) DeleteObjectsWithPrefix(ctx context.Context, container, prefix string) error
DeleteObjectsWithPrefix deletes the blob objects with the specific <prefix> from <container>. If it does not exist, no error is returned.