actions

package
v0.0.0-...-9639e24 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateGUID

func CreateGUID() (string, error)

func CreateStemcell

func CreateStemcell(image string, cloudProps StemcellCloudProperties) (cpi.StemcellCID, error)

func DeleteStemcell

func DeleteStemcell(stemcellCID cpi.StemcellCID) error

func NewDiskCID

func NewDiskCID(context, diskID string) cpi.DiskCID

func NewVMCID

func NewVMCID(context, agentID string) cpi.VMCID

func ParseDiskCID

func ParseDiskCID(diskCID cpi.DiskCID) (context, diskID string)

func ParseVMCID

func ParseVMCID(vmcid cpi.VMCID) (context, agentID string)

Types

type CreateDiskCloudProperties

type CreateDiskCloudProperties struct {
	Context string `json:"context"`
}

type DiskCreator

type DiskCreator struct {
	ClientProvider    kubecluster.ClientProvider
	GUIDGeneratorFunc func() (string, error)
}

DiskCreator simply creates a PersistentVolumeClaim. The attach process will turn the claim into a volume mounted into the pod.

func (*DiskCreator) CreateDisk

func (d *DiskCreator) CreateDisk(size uint, cloudProps CreateDiskCloudProperties, vmcid cpi.VMCID) (cpi.DiskCID, error)

type DiskDeleter

type DiskDeleter struct {
	ClientProvider kubecluster.ClientProvider
}

func (*DiskDeleter) DeleteDisk

func (d *DiskDeleter) DeleteDisk(diskCID cpi.DiskCID) error

type DiskFinder

type DiskFinder struct {
	ClientProvider kubecluster.ClientProvider
}

func (*DiskFinder) HasDisk

func (d *DiskFinder) HasDisk(diskCID cpi.DiskCID) (bool, error)

type DiskGetter

type DiskGetter struct {
	ClientProvider kubecluster.ClientProvider
}

func (*DiskGetter) GetDisks

func (d *DiskGetter) GetDisks(vmcid cpi.VMCID) ([]cpi.DiskCID, error)

type Operation

type Operation int
const (
	Add Operation = iota
	Remove
)

type Port

type Port struct {
	Name     string `json:"name"`
	NodePort int32  `json:"node_port"`
	Port     int32  `json:"port"`
	Protocol string `json:"protocol"`
}

type ResourceList

type ResourceList map[ResourceName]string

type ResourceName

type ResourceName string
const (
	ResourceCPU    ResourceName = "cpu"
	ResourceMemory ResourceName = "memory"
)

type Resources

type Resources struct {
	Limits   ResourceList `json:"limits"`
	Requests ResourceList `json:"requests"`
}

type Service

type Service struct {
	Name      string `json:"name"`
	Type      string `json:"type"`
	ClusterIP string `json:"cluster_ip"`
	Ports     []Port `json:"ports"`
}

type StemcellCloudProperties

type StemcellCloudProperties struct {
	Image string `json:"image"`
}

type VMCloudProperties

type VMCloudProperties struct {
	Context   string    `json:"context"`
	Services  []Service `json:"services,omitempty"`
	Resources Resources `json:"resources,omitempty"`
}

type VMCreator

type VMCreator struct {
	AgentConfig    *config.Agent
	ClientProvider kubecluster.ClientProvider
}

func (*VMCreator) Create

func (v *VMCreator) Create(
	agentID string,
	stemcellCID cpi.StemcellCID,
	cloudProps VMCloudProperties,
	networks cpi.Networks,
	diskCIDs []cpi.DiskCID,
	env cpi.Environment,
) (cpi.VMCID, error)

func (*VMCreator) InstanceSettings

func (v *VMCreator) InstanceSettings(agentID string, networks cpi.Networks, env cpi.Environment) (*agent.Settings, error)

type VMDeleter

type VMDeleter struct {
	ClientProvider kubecluster.ClientProvider
}

func (*VMDeleter) Delete

func (v *VMDeleter) Delete(vmcid cpi.VMCID) error

type VMFinder

type VMFinder struct {
	ClientProvider kubecluster.ClientProvider
}

func (*VMFinder) FindVM

func (f *VMFinder) FindVM(vmcid cpi.VMCID) (string, *v1.Pod, error)

func (*VMFinder) HasVM

func (f *VMFinder) HasVM(vmcid cpi.VMCID) (bool, error)

type VMMetadataSetter

type VMMetadataSetter struct {
	ClientProvider kubecluster.ClientProvider
}

func (*VMMetadataSetter) SetVMMetadata

func (v *VMMetadataSetter) SetVMMetadata(vmcid cpi.VMCID, metadata map[string]string) error

type VolumeManager

type VolumeManager struct {
	ClientProvider kubecluster.ClientProvider

	Clock             clock.Clock
	PodReadyTimeout   time.Duration
	PostRecreateDelay time.Duration
}

func (*VolumeManager) AttachDisk

func (v *VolumeManager) AttachDisk(vmcid cpi.VMCID, diskCID cpi.DiskCID) error

func (*VolumeManager) DetachDisk

func (v *VolumeManager) DetachDisk(vmcid cpi.VMCID, diskCID cpi.DiskCID) error

Jump to

Keyboard shortcuts

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