machinecontroller

package
v0.11.2 Latest Latest
Warning

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

Go to latest
Published: May 21, 2020 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MachineControllerNamespace     = metav1.NamespaceSystem
	MachineControllerAppLabelKey   = "app"
	MachineControllerAppLabelValue = "machine-controller"
	MachineControllerTag           = "v1.11.3"
)

MachineController related constants

View Source
const (
	WebhookName          = "machine-controller-webhook"
	WebhookAppLabelKey   = "app"
	WebhookAppLabelValue = WebhookName
	WebhookTag           = MachineControllerTag
	WebhookNamespace     = metav1.NamespaceSystem
)

MachineController Webhook related constants

Variables

This section is empty.

Functions

func Deploy

func Deploy(s *state.State) error

Deploy deploys MachineController deployment with RBAC on the cluster

func DeployMachineDeployments added in v0.2.0

func DeployMachineDeployments(s *state.State) error

DeployMachineDeployments deploys MachineDeployments that create appropriate machines

func DeployWebhookConfiguration

func DeployWebhookConfiguration(s *state.State) error

DeployWebhookConfiguration deploys MachineController webhook deployment on the cluster

func DestroyWorkers added in v0.7.0

func DestroyWorkers(s *state.State) error

DestroyWorkers destroys all MachineDeployment, MachineSet and Machine objects

func Ensure added in v0.6.0

func Ensure(s *state.State) error

Ensure install/update machine-controller

func VerifyCRDs added in v0.10.0

func VerifyCRDs(s *state.State) error

VerifyCRDs verifies are Cluster-API CRDs deployed

func WaitDestroy added in v0.10.0

func WaitDestroy(s *state.State) error

WaitDestroy waits for all Machines to be deleted

func WaitForCRDs added in v0.11.1

func WaitForCRDs(s *state.State) error

WaitForCRDs waits for machine-controller CRDs to be created and become established

func WaitForMachineController added in v0.2.0

func WaitForMachineController(client dynclient.Client) error

WaitForMachineController waits for machine-controller-webhook to become running func WaitForMachineController(corev1Client corev1types.CoreV1Interface) error {

func WaitForWebhook added in v0.2.0

func WaitForWebhook(client dynclient.Client) error

WaitForWebhook waits for machine-controller-webhook to become running

func WaitReady added in v0.5.0

func WaitReady(s *state.State) error

WaitReady waits for machine-controller and its webhook to became ready

Types

type AWSSpec added in v0.7.0

type AWSSpec struct {
	AMI                string            `json:"ami"`
	AssignPublicIP     *bool             `json:"assignPublicIP"`
	AvailabilityZone   string            `json:"availabilityZone"`
	DiskIops           *int              `json:"diskIops,omitempty"`
	DiskSize           *int              `json:"diskSize"`
	DiskType           string            `json:"diskType"`
	EBSVolumeEncrypted bool              `json:"ebsVolumeEncrypted"`
	InstanceProfile    string            `json:"instanceProfile"`
	InstanceType       *string           `json:"instanceType"`
	IsSpotInstance     *bool             `json:"isSpotInstance,omitempty"`
	Region             string            `json:"region"`
	SecurityGroupIDs   []string          `json:"securityGroupIDs"`
	SubnetID           string            `json:"subnetId"`
	Tags               map[string]string `json:"tags"`
	VPCID              string            `json:"vpcId"`
	RHSMOfflineToken   string            `json:"rhsmOfflineToken,omitempty"`
}

AWSSpec holds cloudprovider spec for AWS

type AzureSpec added in v0.9.0

type AzureSpec struct {
	AssignPublicIP    bool              `json:"assignPublicIP"`
	AvailabilitySet   string            `json:"availabilitySet"`
	Location          string            `json:"location"`
	ResourceGroup     string            `json:"resourceGroup"`
	RouteTableName    string            `json:"routeTableName"`
	SecurityGroupName string            `json:"securityGroupName"`
	SubnetName        string            `json:"subnetName"`
	Tags              map[string]string `json:"tags"`
	VMSize            string            `json:"vmSize"`
	VNetName          string            `json:"vnetName"`
	ImageID           string            `json:"imageID"`
	OSDiskSize        int               `json:"osDiskSize"`
	DataDiskSize      int               `json:"dataDiskSize"`
	RHSMOfflineToken  string            `json:"rhsmOfflineToken,omitempty"`
}

AzureSpec holds cloudprovider spec for Azure

type DigitalOceanSpec added in v0.7.0

type DigitalOceanSpec struct {
	Region            string   `json:"region"`
	Size              string   `json:"size"`
	Backups           bool     `json:"backups"`
	IPv6              bool     `json:"ipv6"`
	PrivateNetworking bool     `json:"private_networking"`
	Monitoring        bool     `json:"monitoring"`
	Tags              []string `json:"tags"`
}

DigitalOceanSpec holds cloudprovider spec for DigitalOcean

type GCESpec added in v0.7.0

type GCESpec struct {
	DiskSize              int               `json:"diskSize"`
	DiskType              string            `json:"diskType"`
	MachineType           string            `json:"machineType"`
	Network               string            `json:"network"`
	Subnetwork            string            `json:"subnetwork"`
	Zone                  string            `json:"zone"`
	Preemptible           bool              `json:"preemptible"`
	AssignPublicIPAddress *bool             `json:"assignPublicIPAddress"`
	Labels                map[string]string `json:"labels"`
	Tags                  []string          `json:"tags"`
	MultiZone             *bool             `json:"multizone"`
	Regional              *bool             `json:"regional"`
	CustomImage           string            `json:"customImage,omitempty"`
	RHSMOfflineToken      string            `json:"rhsmOfflineToken,omitempty"`
}

GCESpec holds cloudprovider spec for GCE

type HetznerSpec added in v0.7.0

type HetznerSpec struct {
	ServerType string            `json:"serverType"`
	Datacenter string            `json:"datacenter"`
	Location   string            `json:"location"`
	Networks   []string          `json:"networks"`
	Labels     map[string]string `json:"labels,omitempty"`
}

HetznerSpec holds cloudprovider spec for Hetzner

type OpenStackSpec added in v0.7.0

type OpenStackSpec struct {
	Image                 string            `json:"image"`
	Flavor                string            `json:"flavor"`
	SecurityGroups        []string          `json:"securityGroups"`
	FloatingIPPool        string            `json:"floatingIPPool"`
	AvailabilityZone      string            `json:"availabilityZone"`
	Network               string            `json:"network"`
	Subnet                string            `json:"subnet"`
	RootDiskSizeGB        *int              `json:"rootDiskSizeGB,omitempty"`
	NodeVolumeAttachLimit *uint             `json:"nodeVolumeAttachLimit,omitempty"`
	TrustDevicePath       bool              `json:"trustDevicePath"`
	Tags                  map[string]string `json:"tags"`
	RHSMOfflineToken      string            `json:"rhsmOfflineToken,omitempty"`
}

OpenStackSpec holds cloudprovider spec for OpenStack

type PacketSpec added in v0.7.0

type PacketSpec struct {
	ProjectID    string   `json:"projectID"`
	BillingCycle string   `json:"billingCycle"`
	Facilities   []string `json:"facilities"`
	InstanceType string   `json:"instanceType"`
	Tags         []string `json:"tags,omitempty"`
}

PacketSpec holds cloudprovider spec for Packet

type VSphereSpec added in v0.8.0

type VSphereSpec struct {
	AllowInsecure    bool   `json:"allowInsecure"`
	Cluster          string `json:"cluster"`
	CPUs             int    `json:"cpus"`
	Datacenter       string `json:"datacenter"`
	Datastore        string `json:"datastore"`
	DatastoreCluster string `json:"datastoreCluster"`
	DiskSizeGB       *int   `json:"diskSizeGB,omitempty"`
	Folder           string `json:"folder"`
	MemoryMB         int    `json:"memoryMB"`
	TemplateVMName   string `json:"templateVMName"`
	VMNetName        string `json:"vmNetName,omitempty"`
	RHSMOfflineToken string `json:"rhsmOfflineToken,omitempty"`
}

VSphereSpec holds cloudprovider spec for vSphere

Jump to

Keyboard shortcuts

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