Documentation
¶
Index ¶
- Constants
- func CreateMachineDeployments(s *state.State) error
- func Deploy(s *state.State) error
- func DeployWebhookConfiguration(s *state.State) error
- func DestroyWorkers(s *state.State) error
- func Ensure(s *state.State) error
- func VerifyCRDs(s *state.State) error
- func WaitDestroy(s *state.State) error
- func WaitForCRDs(s *state.State) error
- func WaitForMachineController(client dynclient.Client) error
- func WaitForWebhook(client dynclient.Client) error
- func WaitReady(s *state.State) error
- type AWSSpec
- type AzureSpec
- type DigitalOceanSpec
- type GCESpec
- type HetznerSpec
- type OpenStackSpec
- type PacketSpec
- type VSphereSpec
Constants ¶
const ( MachineControllerNamespace = metav1.NamespaceSystem MachineControllerAppLabelKey = "app" MachineControllerAppLabelValue = "machine-controller" MachineControllerTag = "v1.13.1" )
MachineController related constants
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 CreateMachineDeployments ¶
CreateMachineDeployments creates MachineDeployments that create appropriate worker machines
func DeployWebhookConfiguration ¶
DeployWebhookConfiguration deploys MachineController webhook deployment on the cluster
func DestroyWorkers ¶ added in v0.7.0
DestroyWorkers destroys all MachineDeployment, MachineSet and Machine objects
func VerifyCRDs ¶ added in v0.10.0
VerifyCRDs verifies are Cluster-API CRDs deployed
func WaitDestroy ¶ added in v0.10.0
WaitDestroy waits for all Machines to be deleted
func WaitForCRDs ¶ added in v0.11.1
WaitForCRDs waits for machine-controller CRDs to be created and become established
func WaitForMachineController ¶ added in v0.2.0
WaitForMachineController waits for machine-controller-webhook to become running func WaitForMachineController(corev1Client corev1types.CoreV1Interface) error {
func WaitForWebhook ¶ added in v0.2.0
WaitForWebhook waits for machine-controller-webhook to become running
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"`
}
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"`
Zones []string `json:"zones"`
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"`
}
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"`
}
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"`
}
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"`
ResourcePool string `json:"resourcePool"`
MemoryMB int `json:"memoryMB"`
TemplateVMName string `json:"templateVMName"`
VMNetName string `json:"vmNetName,omitempty"`
}
VSphereSpec holds cloudprovider spec for vSphere