client

package
v1.50.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2025 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
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 IgnoreNotFoundError added in v1.27.0

func IgnoreNotFoundError(err error) error

IgnoreNotFoundError ignore not found error

func IsNotFoundError added in v1.14.0

func IsNotFoundError(err error) bool

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(ctx context.Context, name, policy string) (*servergroups.ServerGroup, error)
	GetServerGroup(ctx context.Context, id string) (*servergroups.ServerGroup, error)
	DeleteServerGroup(ctx context.Context, id string) error
	// Server
	ListServerGroups(ctx context.Context) ([]servergroups.ServerGroup, error)
	CreateServer(ctx context.Context, createOpts servers.CreateOpts) (*servers.Server, error)
	DeleteServer(ctx context.Context, id string) error
	FindServersByName(ctx context.Context, name string) ([]servers.Server, error)

	// Flavor
	FindFlavorID(ctx context.Context, name string) (string, error)

	// KeyPairs
	CreateKeyPair(ctx context.Context, name, publicKey string) (*keypairs.KeyPair, error)
	GetKeyPair(ctx context.Context, name string) (*keypairs.KeyPair, error)
	DeleteKeyPair(ctx context.Context, name string) 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) CreateKeyPair added in v1.36.0

func (c *ComputeClient) CreateKeyPair(ctx context.Context, name, publicKey string) (*keypairs.KeyPair, error)

CreateKeyPair creates an SSH key pair

func (*ComputeClient) CreateServer added in v1.27.0

func (c *ComputeClient) CreateServer(ctx context.Context, createOpts servers.CreateOpts) (*servers.Server, error)

CreateServer retrieves the Create of Compute service.

func (*ComputeClient) CreateServerGroup added in v1.14.0

func (c *ComputeClient) CreateServerGroup(ctx context.Context, name, policy string) (*servergroups.ServerGroup, error)

CreateServerGroup creates a server group with the specified policy.

func (*ComputeClient) DeleteKeyPair added in v1.36.0

func (c *ComputeClient) DeleteKeyPair(ctx context.Context, name string) error

DeleteKeyPair deletes an SSH key pair by name

func (*ComputeClient) DeleteServer added in v1.27.0

func (c *ComputeClient) DeleteServer(ctx context.Context, id string) error

DeleteServer delete the Compute service.

func (*ComputeClient) DeleteServerGroup added in v1.14.0

func (c *ComputeClient) DeleteServerGroup(ctx context.Context, 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) FindFlavorID added in v1.27.0

func (c *ComputeClient) FindFlavorID(ctx context.Context, name string) (string, error)

FindFlavorID find flavor ID by flavor name.

func (*ComputeClient) FindImageByID added in v1.40.0

func (c *ComputeClient) FindImageByID(ctx context.Context, id string) (*images.Image, error)

FindImageByID returns the image with the given ID. It returns nil if the image is not found.

func (*ComputeClient) FindImages added in v1.27.0

func (c *ComputeClient) FindImages(ctx context.Context, name string) ([]images.Image, error)

FindImages find image ID by images name.

func (*ComputeClient) FindServersByName added in v1.27.0

func (c *ComputeClient) FindServersByName(ctx context.Context, name string) ([]servers.Server, error)

FindServersByName retrieves the Compute Server by Name

func (*ComputeClient) GetKeyPair added in v1.36.0

func (c *ComputeClient) GetKeyPair(ctx context.Context, name string) (*keypairs.KeyPair, error)

GetKeyPair gets an SSH key pair by name

func (*ComputeClient) GetServerGroup added in v1.14.0

func (c *ComputeClient) GetServerGroup(ctx context.Context, id string) (*servergroups.ServerGroup, error)

GetServerGroup retrieves the server group with the specified id.

func (*ComputeClient) ListImages added in v1.27.0

func (c *ComputeClient) ListImages(ctx context.Context, listOpts images.ListOpts) ([]images.Image, error)

ListImages list all images.

func (*ComputeClient) ListServerGroups added in v1.14.0

func (c *ComputeClient) ListServerGroups(ctx context.Context) ([]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

func (c *DNSClient) DeleteRecordSet(ctx context.Context, zoneID, name, recordType string) error

DeleteRecordSet deletes the recordset with the given name and record type in the zone with the given zone ID.

func (*DNSClient) GetZones added in v1.21.0

func (c *DNSClient) GetZones(ctx context.Context) (map[string]string, error)

GetZones returns a map of all zone names mapped to their IDs.

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)
	Loadbalancing(options ...Option) (Loadbalancing, error)
	SharedFilesystem(options ...Option) (SharedFilesystem, error)
	Images(options ...Option) (Images, 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(ctx context.Context, 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(ctx context.Context, credentials *openstack.Credentials) (Factory, error)
}

FactoryFactory creates instances of Factory.

type FactoryFactoryFunc added in v1.21.0

type FactoryFactoryFunc func(ctx context.Context, credentials *openstack.Credentials) (Factory, error)

FactoryFactoryFunc is a function that implements FactoryFactory.

func (FactoryFactoryFunc) NewFactory added in v1.21.0

func (f FactoryFactoryFunc) NewFactory(ctx context.Context, credentials *openstack.Credentials) (Factory, error)

NewFactory creates a new instance of Factory for the given Openstack credentials.

type ImageClient added in v1.40.0

type ImageClient struct {
	// contains filtered or unexported fields
}

ImageClient is a client for images

func (*ImageClient) ListImages added in v1.40.0

func (c *ImageClient) ListImages(ctx context.Context, opts images.ListOpts) ([]images.Image, error)

ListImages lists all images filtered by listOpts

type Images added in v1.40.0

type Images interface {
	ListImages(ctx context.Context, opts images.ListOpts) ([]images.Image, error)
}

Images describes the operations of a client interacting with images

type Loadbalancing added in v1.36.0

type Loadbalancing interface {
	ListLoadbalancers(ctx context.Context, listOpts loadbalancers.ListOpts) ([]loadbalancers.LoadBalancer, error)
	DeleteLoadbalancer(ctx context.Context, id string, opts loadbalancers.DeleteOpts) error
	GetLoadbalancer(ctx context.Context, id string) (*loadbalancers.LoadBalancer, error)
}

Loadbalancing describes the operations of a client interacting with OpenStack's Octavia service.

type LoadbalancingClient added in v1.36.0

type LoadbalancingClient struct {
	// contains filtered or unexported fields
}

LoadbalancingClient is a client for Octavia service.

func (*LoadbalancingClient) DeleteLoadbalancer added in v1.36.0

func (c *LoadbalancingClient) DeleteLoadbalancer(ctx context.Context, id string, opts loadbalancers.DeleteOpts) error

DeleteLoadbalancer deletes the loadbalancer with the specified ID.

func (*LoadbalancingClient) GetLoadbalancer added in v1.36.0

func (c *LoadbalancingClient) GetLoadbalancer(ctx context.Context, id string) (*loadbalancers.LoadBalancer, error)

GetLoadbalancer returns the loadbalancer with the specified ID.

func (*LoadbalancingClient) ListLoadbalancers added in v1.36.0

func (c *LoadbalancingClient) ListLoadbalancers(ctx context.Context, listOpts loadbalancers.ListOpts) ([]loadbalancers.LoadBalancer, error)

ListLoadbalancers returns a list of all loadbalancers info by listOpts

type Networking added in v1.21.0

type Networking interface {
	// External Network
	GetExternalNetworkNames(ctx context.Context) ([]string, error)
	GetExternalNetworkByName(ctx context.Context, name string) (*networks.Network, error)
	// Network
	CreateNetwork(ctx context.Context, opts networks.CreateOpts) (*networks.Network, error)
	ListNetwork(ctx context.Context, listOpts networks.ListOpts) ([]networks.Network, error)
	UpdateNetwork(ctx context.Context, networkID string, opts networks.UpdateOpts) (*networks.Network, error)
	GetNetworkByName(ctx context.Context, name string) ([]networks.Network, error)
	GetNetworkByID(ctx context.Context, id string) (*networks.Network, error)
	DeleteNetwork(ctx context.Context, networkID string) error
	// FloatingIP
	CreateFloatingIP(ctx context.Context, createOpts floatingips.CreateOpts) (*floatingips.FloatingIP, error)
	DeleteFloatingIP(ctx context.Context, id string) error
	ListFip(ctx context.Context, listOpts floatingips.ListOpts) ([]floatingips.FloatingIP, error)
	GetFipByName(ctx context.Context, name string) ([]floatingips.FloatingIP, error)
	GetFloatingIP(ctx context.Context, listOpts floatingips.ListOpts) (floatingips.FloatingIP, error)
	// Security Group
	CreateSecurityGroup(ctx context.Context, listOpts groups.CreateOpts) (*groups.SecGroup, error)
	DeleteSecurityGroup(ctx context.Context, groupID string) error
	ListSecurityGroup(ctx context.Context, listOpts groups.ListOpts) ([]groups.SecGroup, error)
	GetSecurityGroup(ctx context.Context, groupID string) (*groups.SecGroup, error)
	GetSecurityGroupByName(ctx context.Context, name string) ([]groups.SecGroup, error)
	// Security Group rules
	CreateRule(ctx context.Context, createOpts rules.CreateOpts) (*rules.SecGroupRule, error)
	ListRules(ctx context.Context, listOpts rules.ListOpts) ([]rules.SecGroupRule, error)
	DeleteRule(ctx context.Context, ruleID string) error
	// Routers
	GetRouterByID(ctx context.Context, id string) (*routers.Router, error)
	ListRouters(ctx context.Context, listOpts routers.ListOpts) ([]routers.Router, error)
	UpdateRoutesForRouter(ctx context.Context, routes []routers.Route, routerID string) (*routers.Router, error)
	UpdateRouter(ctx context.Context, routerID string, updateOpts routers.UpdateOpts) (*routers.Router, error)
	CreateRouter(ctx context.Context, createOpts routers.CreateOpts) (*routers.Router, error)
	DeleteRouter(ctx context.Context, routerID string) error
	AddRouterInterface(ctx context.Context, routerID string, addOpts routers.AddInterfaceOpts) (*routers.InterfaceInfo, error)
	RemoveRouterInterface(ctx context.Context, routerID string, removeOpts routers.RemoveInterfaceOpts) (*routers.InterfaceInfo, error)
	// Subnets
	CreateSubnet(ctx context.Context, createOpts subnets.CreateOpts) (*subnets.Subnet, error)
	GetSubnetByID(ctx context.Context, id string) (*subnets.Subnet, error)
	ListSubnets(ctx context.Context, listOpts subnets.ListOpts) ([]subnets.Subnet, error)
	UpdateSubnet(ctx context.Context, id string, updateOpts subnets.UpdateOpts) (*subnets.Subnet, error)
	DeleteSubnet(ctx context.Context, subnetID string) error
	// Ports
	GetPort(ctx context.Context, portID string) (*ports.Port, error)
	GetRouterInterfacePort(ctx context.Context, routerID, subnetID string) (*ports.Port, error)
	GetInstancePorts(ctx context.Context, instanceID string) ([]ports.Port, error)
	UpdateFIPWithPort(ctx context.Context, fipID, portID string) error
}

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) AddRouterInterface added in v1.36.0

func (c *NetworkingClient) AddRouterInterface(ctx context.Context, routerID string, addOpts routers.AddInterfaceOpts) (*routers.InterfaceInfo, error)

AddRouterInterface adds a router interface

func (*NetworkingClient) CreateFloatingIP added in v1.27.0

func (c *NetworkingClient) CreateFloatingIP(ctx context.Context, createOpts floatingips.CreateOpts) (*floatingips.FloatingIP, error)

CreateFloatingIP create floating ip

func (*NetworkingClient) CreateNetwork added in v1.36.0

func (c *NetworkingClient) CreateNetwork(ctx context.Context, opts networks.CreateOpts) (*networks.Network, error)

CreateNetwork creates a network

func (*NetworkingClient) CreateRouter added in v1.36.0

func (c *NetworkingClient) CreateRouter(ctx context.Context, createOpts routers.CreateOpts) (*routers.Router, error)

CreateRouter creates a router

func (*NetworkingClient) CreateRule added in v1.27.0

func (c *NetworkingClient) CreateRule(ctx context.Context, createOpts rules.CreateOpts) (*rules.SecGroupRule, error)

CreateRule create security group rule

func (*NetworkingClient) CreateSecurityGroup added in v1.27.0

func (c *NetworkingClient) CreateSecurityGroup(ctx context.Context, listOpts groups.CreateOpts) (*groups.SecGroup, error)

CreateSecurityGroup create a security group

func (*NetworkingClient) CreateSubnet added in v1.36.0

func (c *NetworkingClient) CreateSubnet(ctx context.Context, createOpts subnets.CreateOpts) (*subnets.Subnet, error)

CreateSubnet creates a subnet

func (*NetworkingClient) DeleteFloatingIP added in v1.27.0

func (c *NetworkingClient) DeleteFloatingIP(ctx context.Context, id string) error

DeleteFloatingIP delete floatingip by floatingip id

func (*NetworkingClient) DeleteNetwork added in v1.36.0

func (c *NetworkingClient) DeleteNetwork(ctx context.Context, networkID string) error

DeleteNetwork deletes a network

func (*NetworkingClient) DeleteRouter added in v1.36.0

func (c *NetworkingClient) DeleteRouter(ctx context.Context, routerID string) error

DeleteRouter deletes a router by identifier

func (*NetworkingClient) DeleteRule added in v1.27.0

func (c *NetworkingClient) DeleteRule(ctx context.Context, ruleID string) error

DeleteRule delete security group rule

func (*NetworkingClient) DeleteSecurityGroup added in v1.27.0

func (c *NetworkingClient) DeleteSecurityGroup(ctx context.Context, groupID string) error

DeleteSecurityGroup delete a security group

func (*NetworkingClient) DeleteSubnet added in v1.36.0

func (c *NetworkingClient) DeleteSubnet(ctx context.Context, subnetID string) error

DeleteSubnet deletes a subnet by identifier

func (*NetworkingClient) GetExternalNetworkByName added in v1.36.0

func (c *NetworkingClient) GetExternalNetworkByName(ctx context.Context, name string) (*networks.Network, error)

GetExternalNetworkByName returns an external network by name

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.

func (*NetworkingClient) GetFipByName added in v1.27.0

func (c *NetworkingClient) GetFipByName(ctx context.Context, name string) ([]floatingips.FloatingIP, error)

GetFipByName returns floating IP info by floatingip name

func (*NetworkingClient) GetFloatingIP added in v1.47.0

func (c *NetworkingClient) GetFloatingIP(ctx context.Context, listOpts floatingips.ListOpts) (floatingips.FloatingIP, error)

GetFloatingIP gets the Floating IP ID by listOpts.

func (*NetworkingClient) GetInstancePorts added in v1.47.0

func (c *NetworkingClient) GetInstancePorts(ctx context.Context, instanceID string) ([]ports.Port, error)

GetInstancePorts retrieves the ports of the instance.

func (*NetworkingClient) GetNetworkByID added in v1.40.0

func (c *NetworkingClient) GetNetworkByID(ctx context.Context, id string) (*networks.Network, error)

GetNetworkByID return a network info by id

func (*NetworkingClient) GetNetworkByName added in v1.27.0

func (c *NetworkingClient) GetNetworkByName(ctx context.Context, name string) ([]networks.Network, error)

GetNetworkByName return a network info by name

func (*NetworkingClient) GetPort added in v1.36.0

func (c *NetworkingClient) GetPort(ctx context.Context, portID string) (*ports.Port, error)

GetPort gets a port by identifier

func (*NetworkingClient) GetRouterByID added in v1.30.2

func (c *NetworkingClient) GetRouterByID(ctx context.Context, id string) (*routers.Router, error)

GetRouterByID return a router info by name

func (*NetworkingClient) GetRouterInterfacePort added in v1.36.0

func (c *NetworkingClient) GetRouterInterfacePort(ctx context.Context, routerID, subnetID string) (*ports.Port, error)

GetRouterInterfacePort gets a port for a router interface

func (*NetworkingClient) GetSecurityGroup added in v1.36.0

func (c *NetworkingClient) GetSecurityGroup(ctx context.Context, groupID string) (*groups.SecGroup, error)

GetSecurityGroup returns a security group info by id

func (*NetworkingClient) GetSecurityGroupByName added in v1.27.0

func (c *NetworkingClient) GetSecurityGroupByName(ctx context.Context, name string) ([]groups.SecGroup, error)

GetSecurityGroupByName returns a security group info by security group name

func (*NetworkingClient) GetSubnetByID added in v1.40.0

func (c *NetworkingClient) GetSubnetByID(ctx context.Context, id string) (*subnets.Subnet, error)

GetSubnetByID return a subnet info by id

func (*NetworkingClient) ListFip added in v1.27.0

ListFip returns a list of all network info

func (*NetworkingClient) ListNetwork added in v1.27.0

func (c *NetworkingClient) ListNetwork(ctx context.Context, listOpts networks.ListOpts) ([]networks.Network, error)

ListNetwork returns a list of all network info by listOpts

func (*NetworkingClient) ListRouters added in v1.30.2

func (c *NetworkingClient) ListRouters(ctx context.Context, listOpts routers.ListOpts) ([]routers.Router, error)

ListRouters returns a list of routers

func (*NetworkingClient) ListRules added in v1.27.0

func (c *NetworkingClient) ListRules(ctx context.Context, listOpts rules.ListOpts) ([]rules.SecGroupRule, error)

ListRules returns a list of security group rules

func (*NetworkingClient) ListSecurityGroup added in v1.27.0

func (c *NetworkingClient) ListSecurityGroup(ctx context.Context, listOpts groups.ListOpts) ([]groups.SecGroup, error)

ListSecurityGroup returns a list of security group

func (*NetworkingClient) ListSubnets added in v1.36.0

func (c *NetworkingClient) ListSubnets(ctx context.Context, listOpts subnets.ListOpts) ([]subnets.Subnet, error)

ListSubnets returns a list of subnets

func (*NetworkingClient) RemoveRouterInterface added in v1.36.0

func (c *NetworkingClient) RemoveRouterInterface(ctx context.Context, routerID string, removeOpts routers.RemoveInterfaceOpts) (*routers.InterfaceInfo, error)

RemoveRouterInterface removes a router interface

func (*NetworkingClient) UpdateFIPWithPort added in v1.47.0

func (c *NetworkingClient) UpdateFIPWithPort(ctx context.Context, fipID, portID string) error

UpdateFIPWithPort updates a Floating IP by adding a port.

func (*NetworkingClient) UpdateNetwork added in v1.36.0

func (c *NetworkingClient) UpdateNetwork(ctx context.Context, networkID string, opts networks.UpdateOpts) (*networks.Network, error)

UpdateNetwork updates settings of a network resource

func (*NetworkingClient) UpdateRouter added in v1.36.0

func (c *NetworkingClient) UpdateRouter(ctx context.Context, routerID string, updateOpts routers.UpdateOpts) (*routers.Router, error)

UpdateRouter updates router settings

func (*NetworkingClient) UpdateRoutesForRouter added in v1.30.2

func (c *NetworkingClient) UpdateRoutesForRouter(ctx context.Context, routes []routers.Route, routerID string) (*routers.Router, error)

UpdateRoutesForRouter updates the route list for a router

func (*NetworkingClient) UpdateSubnet added in v1.36.0

func (c *NetworkingClient) UpdateSubnet(ctx context.Context, id string, updateOpts subnets.UpdateOpts) (*subnets.Subnet, error)

UpdateSubnet updates a subnet

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) Images added in v1.40.0

func (oc *OpenstackClientFactory) Images(options ...Option) (Images, error)

Images creates a Images client

func (*OpenstackClientFactory) Loadbalancing added in v1.36.0

func (oc *OpenstackClientFactory) Loadbalancing(options ...Option) (Loadbalancing, error)

Loadbalancing creates a Loadbalancing client.

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.

func (*OpenstackClientFactory) SharedFilesystem added in v1.40.0

func (oc *OpenstackClientFactory) SharedFilesystem(options ...Option) (SharedFilesystem, error)

SharedFilesystem creates a new Manila client.

func (*OpenstackClientFactory) Storage added in v1.14.0

func (oc *OpenstackClientFactory) Storage(options ...Option) (Storage, error)

Storage returns a Storage client. The client uses Swift v1 API for issuing calls.

type Option added in v1.14.0

Option can be passed to Factory implementations to modify the produced clients.

func WithRegion added in v1.14.0

func WithRegion(region string) Option

WithRegion returns an Option that can modify the region a client targets.

type SharedFilesystem added in v1.40.0

type SharedFilesystem interface {
	// Share Networks
	GetShareNetwork(ctx context.Context, id string) (*sharenetworks.ShareNetwork, error)
	CreateShareNetwork(ctx context.Context, createOpts sharenetworks.CreateOpts) (*sharenetworks.ShareNetwork, error)
	ListShareNetworks(ctx context.Context, listOpts sharenetworks.ListOpts) ([]sharenetworks.ShareNetwork, error)
	DeleteShareNetwork(ctx context.Context, id string) error
}

SharedFilesystem describes operations for OpenStack's Manila service.

type SharedFilesystemClient added in v1.40.0

type SharedFilesystemClient struct {
	// contains filtered or unexported fields
}

SharedFilesystemClient is a client for Manila service.

func (*SharedFilesystemClient) CreateShareNetwork added in v1.40.0

CreateShareNetwork creates the share network.

func (*SharedFilesystemClient) DeleteShareNetwork added in v1.40.0

func (c *SharedFilesystemClient) DeleteShareNetwork(ctx context.Context, id string) error

DeleteShareNetwork deletes a share network by identifier

func (*SharedFilesystemClient) GetShareNetwork added in v1.40.0

GetShareNetwork returns a share network by identifier

func (*SharedFilesystemClient) ListShareNetworks added in v1.40.0

ListShareNetworks returns a list of share networks

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.

func NewStorageClientFromSecretRef

func NewStorageClientFromSecretRef(ctx context.Context, c client.Client, secretRef corev1.SecretReference, region string) (Storage, error)

NewStorageClientFromSecretRef retrieves the openstack client from specified by the secret reference.

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.

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL