gce_cloud

package
v0.19.0 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2015 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Overview

Package gce_cloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.

Index

Constants

View Source
const EXTERNAL_IP_METADATA_URL = "http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip"
View Source
const ProviderName = "gce"

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Global struct {
		TokenURL    string `gcfg:"token-url"`
		ProjectID   string `gcfg:"project-id"`
		NetworkName string `gcfg:"network-name"`
	}
}

type GCEAffinityType

type GCEAffinityType string

Session Affinity Type string

const (
	// AffinityTypeNone - no session affinity.
	GCEAffinityTypeNone GCEAffinityType = "None"
	// AffinityTypeClientIP is the Client IP based.
	GCEAffinityTypeClientIP GCEAffinityType = "CLIENT_IP"
	// AffinityTypeClientIP is the Client IP based.
	GCEAffinityTypeClientIPProto GCEAffinityType = "CLIENT_IP_PROTO"
)

type GCECloud

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

GCECloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.

func (*GCECloud) AddSSHKeyToAllInstances

func (gce *GCECloud) AddSSHKeyToAllInstances(user string, keyData []byte) error

func (*GCECloud) AttachDisk

func (gce *GCECloud) AttachDisk(diskName string, readOnly bool) error

func (*GCECloud) Clusters

func (gce *GCECloud) Clusters() (cloudprovider.Clusters, bool)

func (*GCECloud) CreateRoute

func (gce *GCECloud) CreateRoute(route *cloudprovider.Route) error

func (*GCECloud) CreateTCPLoadBalancer

func (gce *GCECloud) CreateTCPLoadBalancer(name, region string, externalIP net.IP, ports []*api.ServicePort, hosts []string, affinityType api.ServiceAffinity) (*api.LoadBalancerStatus, error)

CreateTCPLoadBalancer is an implementation of TCPLoadBalancer.CreateTCPLoadBalancer. TODO(a-robinson): Don't just ignore specified IP addresses. Check if they're owned by the project and available to be used, and use them if they are.

func (*GCECloud) DeleteRoute

func (gce *GCECloud) DeleteRoute(name string) error

func (*GCECloud) DetachDisk

func (gce *GCECloud) DetachDisk(devicePath string) error

func (*GCECloud) EnsureTCPLoadBalancerDeleted

func (gce *GCECloud) EnsureTCPLoadBalancerDeleted(name, region string) error

EnsureTCPLoadBalancerDeleted is an implementation of TCPLoadBalancer.EnsureTCPLoadBalancerDeleted.

func (*GCECloud) ExternalID

func (gce *GCECloud) ExternalID(instance string) (string, error)

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

func (*GCECloud) GetNodeResources

func (gce *GCECloud) GetNodeResources(name string) (*api.NodeResources, error)

func (*GCECloud) GetTCPLoadBalancer

func (gce *GCECloud) GetTCPLoadBalancer(name, region string) (*api.LoadBalancerStatus, bool, error)

GetTCPLoadBalancer is an implementation of TCPLoadBalancer.GetTCPLoadBalancer

func (*GCECloud) GetZone

func (gce *GCECloud) GetZone() (cloudprovider.Zone, error)

func (*GCECloud) InstanceID

func (gce *GCECloud) InstanceID(instance string) (string, error)

InstanceID returns the cloud provider ID of the specified instance.

func (*GCECloud) Instances

func (gce *GCECloud) Instances() (cloudprovider.Instances, bool)

Instances returns an implementation of Instances for Google Compute Engine.

func (*GCECloud) List

func (gce *GCECloud) List(filter string) ([]string, error)

List is an implementation of Instances.List.

func (*GCECloud) ListClusters

func (gce *GCECloud) ListClusters() ([]string, error)

func (*GCECloud) ListRoutes

func (gce *GCECloud) ListRoutes(filter string) ([]*cloudprovider.Route, error)

func (*GCECloud) Master

func (gce *GCECloud) Master(clusterName string) (string, error)

func (*GCECloud) NodeAddresses

func (gce *GCECloud) NodeAddresses(_ string) ([]api.NodeAddress, error)

NodeAddresses is an implementation of Instances.NodeAddresses.

func (*GCECloud) ProviderName

func (gce *GCECloud) ProviderName() string

ProviderName returns the cloud provider ID.

func (*GCECloud) Routes

func (gce *GCECloud) Routes() (cloudprovider.Routes, bool)

Routes returns an implementation of Routes for Google Compute Engine.

func (*GCECloud) TCPLoadBalancer

func (gce *GCECloud) TCPLoadBalancer() (cloudprovider.TCPLoadBalancer, bool)

TCPLoadBalancer returns an implementation of TCPLoadBalancer for Google Compute Engine.

func (*GCECloud) UpdateTCPLoadBalancer

func (gce *GCECloud) UpdateTCPLoadBalancer(name, region string, hosts []string) error

UpdateTCPLoadBalancer is an implementation of TCPLoadBalancer.UpdateTCPLoadBalancer.

func (*GCECloud) Zones

func (gce *GCECloud) Zones() (cloudprovider.Zones, bool)

Zones returns an implementation of Zones for Google Compute Engine.

Jump to

Keyboard shortcuts

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