Help us shape the future of Go! Take the 2026 Go Developer Survey

openstack

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2016 License: Apache-2.0 Imports: 34 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MiB = 1024 * 1024
	GB  = 1000 * 1000 * 1000
)
View Source
const ProviderName = "openstack"

Variables

View Source
var ErrAttrNotFound = errors.New("Expected attribute not found")
View Source
var ErrMultipleResults = errors.New("Multiple results where only one expected")
View Source
var ErrNoAddressFound = errors.New("No address found for host")
View Source
var ErrNotFound = errors.New("Failed to find object")

Functions

This section is empty.

Types

type Config

type Config struct {
	Global struct {
		AuthUrl    string `gcfg:"auth-url"`
		Username   string
		UserId     string `gcfg:"user-id"`
		Password   string
		ApiKey     string `gcfg:"api-key"`
		TenantId   string `gcfg:"tenant-id"`
		TenantName string `gcfg:"tenant-name"`
		DomainId   string `gcfg:"domain-id"`
		DomainName string `gcfg:"domain-name"`
		Region     string
	}
	LoadBalancer LoadBalancerOpts
}

type Instances

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

func (*Instances) AddSSHKeyToAllInstances

func (i *Instances) AddSSHKeyToAllInstances(user string, keyData []byte) error

func (*Instances) CurrentNodeName

func (i *Instances) CurrentNodeName(hostname string) (string, error)

Implementation of Instances.CurrentNodeName

func (*Instances) ExternalID

func (i *Instances) ExternalID(name string) (string, error)

ExternalID returns the cloud provider ID of the specified instance (deprecated).

func (*Instances) InstanceID

func (i *Instances) InstanceID(name string) (string, error)

InstanceID returns the cloud provider ID of the specified instance.

func (*Instances) InstanceType added in v1.2.0

func (i *Instances) InstanceType(name string) (string, error)

InstanceType returns the type of the specified instance.

func (*Instances) List

func (i *Instances) List(name_filter string) ([]string, error)

func (*Instances) NodeAddresses

func (i *Instances) NodeAddresses(name string) ([]api.NodeAddress, error)

type LbaasV1 added in v1.3.0

type LbaasV1 struct {
	LoadBalancer
}

LoadBalancer implementation for LBaaS v1

func (*LbaasV1) EnsureLoadBalancer added in v1.3.0

func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *api.Service, hosts []string) (*api.LoadBalancerStatus, error)

func (*LbaasV1) EnsureLoadBalancerDeleted added in v1.3.0

func (lb *LbaasV1) EnsureLoadBalancerDeleted(clusterName string, service *api.Service) error

func (*LbaasV1) GetLoadBalancer added in v1.3.0

func (lb *LbaasV1) GetLoadBalancer(clusterName string, service *api.Service) (*api.LoadBalancerStatus, bool, error)

func (*LbaasV1) UpdateLoadBalancer added in v1.3.0

func (lb *LbaasV1) UpdateLoadBalancer(clusterName string, service *api.Service, hosts []string) error

type LbaasV2 added in v1.3.0

type LbaasV2 struct {
	LoadBalancer
}

LoadBalancer implementation for LBaaS v2

func (*LbaasV2) EnsureLoadBalancer added in v1.3.0

func (lbaas *LbaasV2) EnsureLoadBalancer(clusterName string, apiService *api.Service, hosts []string) (*api.LoadBalancerStatus, error)

func (*LbaasV2) EnsureLoadBalancerDeleted added in v1.3.0

func (lbaas *LbaasV2) EnsureLoadBalancerDeleted(clusterName string, service *api.Service) error

func (*LbaasV2) GetLoadBalancer added in v1.3.0

func (lbaas *LbaasV2) GetLoadBalancer(clusterName string, service *api.Service) (*api.LoadBalancerStatus, bool, error)

func (*LbaasV2) UpdateLoadBalancer added in v1.3.0

func (lbaas *LbaasV2) UpdateLoadBalancer(clusterName string, service *api.Service, hosts []string) error

type LoadBalancer

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

type LoadBalancerOpts

type LoadBalancerOpts struct {
	LBVersion         string     `gcfg:"lb-version"` // overrides autodetection. v1 or v2
	SubnetId          string     `gcfg:"subnet-id"`  // required
	FloatingNetworkId string     `gcfg:"floating-network-id"`
	LBMethod          string     `gcfg:"lb-method"`
	CreateMonitor     bool       `gcfg:"create-monitor"`
	MonitorDelay      MyDuration `gcfg:"monitor-delay"`
	MonitorTimeout    MyDuration `gcfg:"monitor-timeout"`
	MonitorMaxRetries uint       `gcfg:"monitor-max-retries"`
}

type MyDuration

type MyDuration struct {
	time.Duration
}

encoding.TextUnmarshaler interface for time.Duration

func (*MyDuration) UnmarshalText

func (d *MyDuration) UnmarshalText(text []byte) error

type OpenStack

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

OpenStack is an implementation of cloud provider Interface for OpenStack.

func (*OpenStack) AttachDisk

func (os *OpenStack) AttachDisk(instanceID string, diskName string) (string, error)

Attaches given cinder volume to the compute running kubelet

func (*OpenStack) Clusters

func (os *OpenStack) Clusters() (cloudprovider.Clusters, bool)

func (*OpenStack) CreateVolume added in v1.2.0

func (os *OpenStack) CreateVolume(name string, size int, vtype, availability string, tags *map[string]string) (volumeName string, err error)

Create a volume of given size (in GiB)

func (*OpenStack) DeleteVolume added in v1.2.0

func (os *OpenStack) DeleteVolume(volumeName string) error

func (*OpenStack) DetachDisk

func (os *OpenStack) DetachDisk(instanceID string, partialDiskId string) error

Detaches given cinder volume from the compute running kubelet

func (*OpenStack) DiskIsAttached added in v1.3.0

func (os *OpenStack) DiskIsAttached(diskName, instanceID string) (bool, error)

query if a volume is attached to a compute instance

func (*OpenStack) GetAttachmentDiskPath added in v1.3.0

func (os *OpenStack) GetAttachmentDiskPath(instanceID string, diskName string) (string, error)

Get device path of attached volume to the compute running kubelet

func (*OpenStack) GetDevicePath added in v1.3.0

func (os *OpenStack) GetDevicePath(diskId string) string

GetDevicePath returns the path of an attached block storage volume, specified by its id.

func (*OpenStack) GetZone

func (os *OpenStack) GetZone() (cloudprovider.Zone, error)

func (*OpenStack) InstanceID added in v1.3.0

func (os *OpenStack) InstanceID() (string, error)

InstanceID returns the kubelet's cloud provider ID.

func (*OpenStack) Instances

func (os *OpenStack) Instances() (cloudprovider.Instances, bool)

Instances returns an implementation of Instances for OpenStack.

func (*OpenStack) LoadBalancer added in v1.2.0

func (os *OpenStack) LoadBalancer() (cloudprovider.LoadBalancer, bool)

func (*OpenStack) ProviderName

func (os *OpenStack) ProviderName() string

ProviderName returns the cloud provider ID.

func (*OpenStack) Routes

func (os *OpenStack) Routes() (cloudprovider.Routes, bool)

func (*OpenStack) ScrubDNS added in v1.1.1

func (os *OpenStack) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)

ScrubDNS filters DNS settings for pods.

func (*OpenStack) Zones

func (os *OpenStack) Zones() (cloudprovider.Zones, bool)

Jump to

Keyboard shortcuts

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