ostack

package
v1.2.1 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CloudsProvider

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

CloudsProvider creates a client from clouds.yaml.

func NewCloudsProvider

func NewCloudsProvider(cloud string) *CloudsProvider

NewCloudsProvider creates the initial client for connecting to Openstack.

func (*CloudsProvider) Client

type ComputeClient

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

func NewComputeClient

func NewComputeClient(provider Provider) (*ComputeClient, error)

func (*ComputeClient) AttachIP

func (c *ComputeClient) AttachIP(serverID, fip string) error

AttachIP attaches the provided IP to the provided server.

func (*ComputeClient) CreateKeypair

func (c *ComputeClient) CreateKeypair(keyNamePrefix string) (*keypairs.KeyPair, error)

CreateKeypair creates a new KeyPair in Openstack.

func (*ComputeClient) CreateServer

func (c *ComputeClient) CreateServer(keypairName string, flavor, networkID string, attachConfigDrive *bool, userData []byte, imageID string, securityGroups []string) (*servers.Server, error)

CreateServer creates a compute instance in Openstack.

func (*ComputeClient) GetFlavorIDByName

func (c *ComputeClient) GetFlavorIDByName(name string) (string, error)

GetFlavorIDByName will take a name of a flavor and attempt to find the ID from Openstack.

func (*ComputeClient) GetServerStatus

func (c *ComputeClient) GetServerStatus(sid string) (bool, error)

GetServerStatus gets the status of a server

func (*ComputeClient) RemoveKeypair

func (c *ComputeClient) RemoveKeypair(keyName string) error

RemoveKeypair will delete a Keypair from Openstack.

func (*ComputeClient) RemoveServer

func (c *ComputeClient) RemoveServer(serverID string) error

RemoveServer will delete a Server from Openstack.

type ImageClient

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

func NewImageClient

func NewImageClient(provider Provider) (*ImageClient, error)

func (*ImageClient) ChangeImageVisibility added in v1.1.1

func (c *ImageClient) ChangeImageVisibility(imgID string, visibility images.ImageVisibility) error

ChangeImageVisibility modifies the visibility of the image in OpenStack

func (*ImageClient) FetchAllImages

func (c *ImageClient) FetchAllImages(wildcard string) ([]images.Image, error)

FetchAllImages Fetches all the images from Openstack so that they can parsed after. Because silly GopherCloud - or maybe OpenStack itself doesn't support wildcard search on names and the tag search is limited to an id+tag :facepalm: This probably can be improved though to prevent fetching billions of images.

func (*ImageClient) FetchImage

func (c *ImageClient) FetchImage(imgID string) (*images.Image, error)

FetchImage allows us to fetch a single image by the id.

func (*ImageClient) ModifyImageMetadata

func (c *ImageClient) ModifyImageMetadata(imgID string, key, value string, operation images.UpdateOp) (*images.Image, error)

ModifyImageMetadata allows image metadata to be added, updated or removed.

func (*ImageClient) RemoveImage

func (c *ImageClient) RemoveImage(imgID string) error

RemoveImage will delete an image from Openstack.

func (*ImageClient) TagImage added in v1.1.0

func (c *ImageClient) TagImage(properties map[string]interface{}, imgID, value, tagName string) error

TagImage Tags the image with the passed or failed property.

type NetworkClient

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

func NewNetworkClient

func NewNetworkClient(provider Provider) (*NetworkClient, error)

func (*NetworkClient) GetFloatingIP

func (n *NetworkClient) GetFloatingIP(networkName string) (*floatingips.FloatingIP, error)

GetFloatingIP will create a new FIP.

func (*NetworkClient) RemoveFIP

func (n *NetworkClient) RemoveFIP(fipID string) error

RemoveFIP will delete a Floating IP from Openstack.

type Provider

type Provider interface {
	Client() (*gophercloud.ProviderClient, error)
}

Jump to

Keyboard shortcuts

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