ostack

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GenerateBuilderMetadata

func GenerateBuilderMetadata(o *flags.BuildOptions) map[string]string

GenerateBuilderMetadata generates some glance metadata for the image.

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) (*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) 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.

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