Documentation
¶
Index ¶
- Constants
- func Filter[osResourceT any](in iter.Seq2[*osResourceT, error], filters ...ResourceFilter[osResourceT]) iter.Seq2[*osResourceT, error]
- func JustOne[T any, R Result[*T]](in <-chan R, duplicateError error) (*T, error)
- func NewResultErr[T any](err error) result[T]
- func NewResultOk[T any](ok T) result[T]
- type ComputeClient
- type IdentityClient
- type ImageClient
- type NetworkClient
- type NetworkExt
- type PortExt
- type ResourceFilter
- type Result
Constants ¶
const NovaMinimumMicroversion = "2.60"
NovaMinimumMicroversion is the minimum Nova microversion supported by CAPO 2.60 corresponds to OpenStack Queens
For the canonical description of Nova microversions, see https://docs.openstack.org/nova/latest/reference/api-microversion-history.html
CAPO uses server tags, which were added in microversion 2.52. CAPO supports multiattach volume types, which were added in microversion 2.60.
Variables ¶
This section is empty.
Functions ¶
func NewResultErr ¶
func NewResultOk ¶
func NewResultOk[T any](ok T) result[T]
Types ¶
type ComputeClient ¶
type ComputeClient interface {
CreateFlavor(ctx context.Context, opts flavors.CreateOptsBuilder) (*flavors.Flavor, error)
GetFlavor(ctx context.Context, id string) (*flavors.Flavor, error)
DeleteFlavor(ctx context.Context, id string) error
ListFlavors(ctx context.Context, listOpts flavors.ListOptsBuilder) iter.Seq2[*flavors.Flavor, error]
CreateServer(ctx context.Context, createOpts servers.CreateOptsBuilder, schedulerHints servers.SchedulerHintOptsBuilder) (*servers.Server, error)
DeleteServer(ctx context.Context, serverID string) error
GetServer(ctx context.Context, serverID string) (*servers.Server, error)
ListServers(ctx context.Context, listOpts servers.ListOptsBuilder) iter.Seq2[*servers.Server, error]
}
func NewComputeClient ¶
func NewComputeClient(providerClient *gophercloud.ProviderClient, providerClientOpts *clientconfig.ClientOpts) (ComputeClient, error)
NewComputeClient returns a new compute client.
func NewComputeErrorClient ¶
func NewComputeErrorClient(e error) ComputeClient
NewComputeErrorClient returns a ComputeClient in which every method returns the given error.
type IdentityClient ¶ added in v2.1.0
type IdentityClient interface {
CreateProject(ctx context.Context, opts projects.CreateOptsBuilder) (*projects.Project, error)
GetProject(ctx context.Context, id string) (*projects.Project, error)
DeleteProject(ctx context.Context, id string) error
ListProjects(ctx context.Context, opts projects.ListOptsBuilder) iter.Seq2[*projects.Project, error]
}
func NewIdentityClient ¶ added in v2.1.0
func NewIdentityClient(providerClient *gophercloud.ProviderClient, providerClientOpts *clientconfig.ClientOpts) (IdentityClient, error)
NewIdentityClient returns a new cinder client.
func NewIdentityErrorClient ¶ added in v2.1.0
func NewIdentityErrorClient(e error) IdentityClient
NewProjectErrorClient returns a IdentityClient in which every method returns the given error.
type ImageClient ¶
type ImageClient interface {
ListImages(ctx context.Context, listOpts images.ListOptsBuilder) iter.Seq2[*images.Image, error]
GetImage(ctx context.Context, id string) (*images.Image, error)
CreateImage(ctx context.Context, createOpts images.CreateOptsBuilder) (*images.Image, error)
DeleteImage(ctx context.Context, id string) error
UploadData(ctx context.Context, id string, data io.Reader) error
GetImportInfo(ctx context.Context) (*imageimport.ImportInfo, error)
CreateImport(ctx context.Context, id string, createOpts imageimport.CreateOptsBuilder) error
}
func NewImageClient ¶
func NewImageClient(providerClient *gophercloud.ProviderClient, providerClientOpts *clientconfig.ClientOpts) (ImageClient, error)
NewImageClient returns a new glance client.
func NewImageErrorClient ¶
func NewImageErrorClient(e error) ImageClient
NewImageErrorClient returns an ImageClient in which every method returns the given error.
type NetworkClient ¶
type NetworkClient interface {
ListPort(ctx context.Context, opts ports.ListOptsBuilder) iter.Seq2[*PortExt, error]
CreatePort(ctx context.Context, opts ports.CreateOptsBuilder) (*PortExt, error)
DeletePort(ctx context.Context, id string) error
GetPort(ctx context.Context, id string) (*PortExt, error)
UpdatePort(ctx context.Context, id string, opts ports.UpdateOptsBuilder) (*PortExt, error)
ListRouter(ctx context.Context, opts routers.ListOpts) iter.Seq2[*routers.Router, error]
CreateRouter(ctx context.Context, opts routers.CreateOptsBuilder) (*routers.Router, error)
DeleteRouter(ctx context.Context, id string) error
GetRouter(ctx context.Context, id string) (*routers.Router, error)
UpdateRouter(ctx context.Context, id string, opts routers.UpdateOptsBuilder) (*routers.Router, error)
AddRouterInterface(ctx context.Context, id string, opts routers.AddInterfaceOptsBuilder) (*routers.InterfaceInfo, error)
RemoveRouterInterface(ctx context.Context, id string, opts routers.RemoveInterfaceOptsBuilder) (*routers.InterfaceInfo, error)
ListSecGroup(ctx context.Context, opts groups.ListOpts) iter.Seq2[*groups.SecGroup, error]
CreateSecGroup(ctx context.Context, opts groups.CreateOptsBuilder) (*groups.SecGroup, error)
DeleteSecGroup(ctx context.Context, id string) error
GetSecGroup(ctx context.Context, id string) (*groups.SecGroup, error)
UpdateSecGroup(ctx context.Context, id string, opts groups.UpdateOptsBuilder) (*groups.SecGroup, error)
ListSecGroupRule(ctx context.Context, opts rules.ListOpts) ([]rules.SecGroupRule, error)
CreateSecGroupRules(ctx context.Context, opts []rules.CreateOpts) ([]rules.SecGroupRule, error)
DeleteSecGroupRule(ctx context.Context, id string) error
GetSecGroupRule(ctx context.Context, id string) (*rules.SecGroupRule, error)
ListNetwork(ctx context.Context, opts networks.ListOptsBuilder) iter.Seq2[*NetworkExt, error]
CreateNetwork(ctx context.Context, opts networks.CreateOptsBuilder) (*NetworkExt, error)
DeleteNetwork(ctx context.Context, id string) error
GetNetwork(ctx context.Context, id string) (*NetworkExt, error)
UpdateNetwork(ctx context.Context, id string, opts networks.UpdateOptsBuilder) (*NetworkExt, error)
ListSubnet(ctx context.Context, opts subnets.ListOptsBuilder) iter.Seq2[*subnets.Subnet, error]
CreateSubnet(ctx context.Context, opts subnets.CreateOptsBuilder) (*subnets.Subnet, error)
DeleteSubnet(ctx context.Context, id string) error
GetSubnet(ctx context.Context, id string) (*subnets.Subnet, error)
UpdateSubnet(ctx context.Context, id string, opts subnets.UpdateOptsBuilder) (*subnets.Subnet, error)
ReplaceAllAttributesTags(ctx context.Context, resourceType string, resourceID string, opts attributestags.ReplaceAllOptsBuilder) ([]string, error)
}
func NewNetworkClient ¶
func NewNetworkClient(providerClient *gophercloud.ProviderClient, providerClientOpts *clientconfig.ClientOpts) (NetworkClient, error)
NewNetworkClient returns an instance of the networking service.
type NetworkExt ¶
type NetworkExt struct {
networks.Network
dns.NetworkDNSExt
external.NetworkExternalExt
mtu.NetworkMTUExt
portsecurity.PortSecurityExt
provider.NetworkProviderExt
}
type PortExt ¶ added in v2.1.0
type PortExt struct {
ports.Port
portsecurity.PortSecurityExt
portsbinding.PortsBindingExt
}