kubernetes: github.com/erimatnor/kubernetes/pkg/cloudprovider/gce Index | Files

package gce_cloud

import "github.com/erimatnor/kubernetes/pkg/cloudprovider/gce"

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


Package Files

doc.go gce.go token_source.go


var ErrMetadataConflict = errors.New("Metadata already set at the same key")

type Config Uses

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

type GCEAffinityType Uses

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 Uses

type GCECloud struct {
    // contains filtered or unexported fields

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

func (*GCECloud) AttachDisk Uses

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

func (*GCECloud) Clusters Uses

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

func (*GCECloud) Configure Uses

func (gce *GCECloud) Configure(name string, spec *api.NodeSpec) error

func (*GCECloud) CreateTCPLoadBalancer Uses

func (gce *GCECloud) CreateTCPLoadBalancer(name, region string, externalIP net.IP, ports []int, hosts []string, affinityType api.AffinityType) (string, 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) DeleteTCPLoadBalancer Uses

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

DeleteTCPLoadBalancer is an implementation of TCPLoadBalancer.DeleteTCPLoadBalancer.

func (*GCECloud) DetachDisk Uses

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

func (*GCECloud) ExternalID Uses

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

ExternalID returns the cloud provider ID of the specified instance.

func (*GCECloud) GetNodeResources Uses

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

func (*GCECloud) GetTCPLoadBalancer Uses

func (gce *GCECloud) GetTCPLoadBalancer(name, region string) (endpoint string, exists bool, err error)

GetTCPLoadBalancer is an implementation of TCPLoadBalancer.GetTCPLoadBalancer

func (*GCECloud) GetZone Uses

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

func (*GCECloud) Instances Uses

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

Instances returns an implementation of Instances for Google Compute Engine.

func (*GCECloud) List Uses

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

List is an implementation of Instances.List.

func (*GCECloud) ListClusters Uses

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

func (*GCECloud) Master Uses

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

func (*GCECloud) NodeAddresses Uses

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

NodeAddresses is an implementation of Instances.NodeAddresses.

func (*GCECloud) Release Uses

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

func (*GCECloud) TCPLoadBalancer Uses

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

TCPLoadBalancer returns an implementation of TCPLoadBalancer for Google Compute Engine.

func (*GCECloud) UpdateTCPLoadBalancer Uses

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

UpdateTCPLoadBalancer is an implementation of TCPLoadBalancer.UpdateTCPLoadBalancer.

func (*GCECloud) Zones Uses

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

Zones returns an implementation of Zones for Google Compute Engine.

Package gce_cloud imports 23 packages (graph). Updated 2017-05-11. Refresh now. Tools for package owners.