rackspace

package
v1.6.12 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2017 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const ProviderName = "rackspace"

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) (types.NodeName, error)

Implementation of Instances.CurrentNodeName

func (*Instances) ExternalID

func (i *Instances) ExternalID(nodeName types.NodeName) (string, error)

ExternalID returns the cloud provider ID of the node with the specified Name (deprecated).

func (*Instances) InstanceID

func (i *Instances) InstanceID(nodeName types.NodeName) (string, error)

InstanceID returns the cloud provider ID of the node with the specified Name.

func (*Instances) InstanceType added in v1.2.0

func (i *Instances) InstanceType(name types.NodeName) (string, error)

InstanceType returns the type of the specified instance.

func (*Instances) NodeAddresses

func (i *Instances) NodeAddresses(nodeName types.NodeName) ([]v1.NodeAddress, error)

type LoadBalancerOpts

type LoadBalancerOpts struct {
	SubnetId          string     `gcfg:"subnet-id"` // required
	CreateMonitor     bool       `gcfg:"create-monitor"`
	MonitorDelay      MyDuration `gcfg:"monitor-delay"`
	MonitorTimeout    MyDuration `gcfg:"monitor-timeout"`
	MonitorMaxRetries uint       `gcfg:"monitor-max-retries"`
}

type MetaData added in v1.3.0

type MetaData struct {
	UUID string `json:"uuid"`
	Name string `json:"name"`
}

type MyDuration

type MyDuration struct {
	time.Duration
}

encoding.TextUnmarshaler interface for time.Duration

func (*MyDuration) UnmarshalText

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

type Rackspace

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

Rackspace is an implementation of cloud provider Interface for Rackspace.

func (*Rackspace) AttachDisk added in v1.3.0

func (rs *Rackspace) AttachDisk(instanceID string, diskName string) (string, error)

Attaches given cinder volume to the compute running kubelet

func (*Rackspace) Clusters

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

func (*Rackspace) CreateVolume added in v1.3.0

func (rs *Rackspace) 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 (*Rackspace) DeleteVolume added in v1.3.0

func (rs *Rackspace) DeleteVolume(volumeName string) error

func (*Rackspace) DetachDisk added in v1.3.0

func (rs *Rackspace) DetachDisk(instanceID string, partialDiskId string) error

Detaches given cinder volume from the compute running kubelet

func (*Rackspace) DiskIsAttached added in v1.3.0

func (rs *Rackspace) DiskIsAttached(diskName, instanceID string) (bool, error)

query if a volume is attached to a compute instance

func (*Rackspace) DisksAreAttached added in v1.4.6

func (rs *Rackspace) DisksAreAttached(diskNames []string, instanceID string) (map[string]bool, error)

query if a list volumes are attached to a compute instance

func (*Rackspace) GetAttachmentDiskPath added in v1.3.0

func (rs *Rackspace) GetAttachmentDiskPath(instanceID string, diskName string) (string, error)

Get device path of attached volume to the compute running kubelet, as known by cinder

func (*Rackspace) GetDevicePath added in v1.3.0

func (rs *Rackspace) GetDevicePath(diskId string) string

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

func (*Rackspace) GetZone

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

func (*Rackspace) InstanceID added in v1.3.0

func (rs *Rackspace) InstanceID() (string, error)

InstanceID returns the cloud provider ID of the kubelet's instance.

func (*Rackspace) Instances

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

Instances returns an implementation of Instances for Rackspace.

func (*Rackspace) LoadBalancer added in v1.2.0

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

func (*Rackspace) ProviderName

func (os *Rackspace) ProviderName() string

ProviderName returns the cloud provider ID.

func (*Rackspace) Routes

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

func (*Rackspace) ScrubDNS added in v1.1.1

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

ScrubDNS filters DNS settings for pods.

func (*Rackspace) ShouldTrustDevicePath added in v1.5.0

func (rs *Rackspace) ShouldTrustDevicePath() bool

query if we should trust the cinder provide deviceName, See issue #33128

func (*Rackspace) Zones

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

Jump to

Keyboard shortcuts

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