types

package
v1.58.6 Latest Latest
Warning

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

Go to latest
Published: Aug 1, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

func IntreeCloudProviderImplementationSupported added in v1.57.6

func IntreeCloudProviderImplementationSupported(cloudProvider CloudProvider, version string) (inTree bool, err error)

Types

type CloudProvider

type CloudProvider string
const (
	CloudProviderAWS                 CloudProvider = "aws"
	CloudProviderAzure               CloudProvider = "azure"
	CloudProviderDigitalocean        CloudProvider = "digitalocean"
	CloudProviderGoogle              CloudProvider = "gce"
	CloudProviderEquinixMetal        CloudProvider = "equinixmetal"
	CloudProviderPacket              CloudProvider = "packet"
	CloudProviderHetzner             CloudProvider = "hetzner"
	CloudProviderKubeVirt            CloudProvider = "kubevirt"
	CloudProviderLinode              CloudProvider = "linode"
	CloudProviderNutanix             CloudProvider = "nutanix"
	CloudProviderOpenstack           CloudProvider = "openstack"
	CloudProviderVsphere             CloudProvider = "vsphere"
	CloudProviderVultr               CloudProvider = "vultr"
	CloudProviderVMwareCloudDirector CloudProvider = "vmware-cloud-director"
	CloudProviderFake                CloudProvider = "fake"
	CloudProviderAlibaba             CloudProvider = "alibaba"
	CloudProviderAnexia              CloudProvider = "anexia"
	CloudProviderScaleway            CloudProvider = "scaleway"
	CloudProviderBaremetal           CloudProvider = "baremetal"
	CloudProviderExternal            CloudProvider = "external"
	CloudProviderOpenNebula          CloudProvider = "opennebula"
)

type Config

type Config struct {
	SSHPublicKeys []string `json:"sshPublicKeys"`
	CAPublicKey   string   `json:"caPublicKey"`

	CloudProvider     CloudProvider        `json:"cloudProvider"`
	CloudProviderSpec runtime.RawExtension `json:"cloudProviderSpec"`

	OperatingSystem     OperatingSystem      `json:"operatingSystem"`
	OperatingSystemSpec runtime.RawExtension `json:"operatingSystemSpec"`

	// +optional
	Network *NetworkConfig `json:"network,omitempty"`

	// +optional
	OverwriteCloudConfig *string `json:"overwriteCloudConfig,omitempty"`
}

func GetConfig

func GetConfig(provSpec clusterv1alpha1.ProviderSpec) (*Config, error)

type ConfigVarBool

type ConfigVarBool struct {
	Value           *bool                      `json:"value,omitempty"`
	SecretKeyRef    GlobalSecretKeySelector    `json:"secretKeyRef,omitempty"`
	ConfigMapKeyRef GlobalConfigMapKeySelector `json:"configMapKeyRef,omitempty"`
}

func (ConfigVarBool) MarshalJSON

func (configVarBool ConfigVarBool) MarshalJSON() ([]byte, error)

MarshalJSON encodes the configVarBool, omitting empty strings This is done to not have the json object cluttered with empty strings This will eventually hopefully be resolved within golang itself https://github.com/golang/go/issues/11939

func (*ConfigVarBool) UnmarshalJSON

func (configVarBool *ConfigVarBool) UnmarshalJSON(b []byte) error

type ConfigVarString

type ConfigVarString struct {
	Value           string                     `json:"value,omitempty"`
	SecretKeyRef    GlobalSecretKeySelector    `json:"secretKeyRef,omitempty"`
	ConfigMapKeyRef GlobalConfigMapKeySelector `json:"configMapKeyRef,omitempty"`
}

func (ConfigVarString) MarshalJSON

func (configVarString ConfigVarString) MarshalJSON() ([]byte, error)

MarshalJSON converts a configVarString to its JSON form, omitting empty strings. This is done to not have the json object cluttered with empty strings This will eventually hopefully be resolved within golang itself https://github.com/golang/go/issues/11939.

func (*ConfigVarString) UnmarshalJSON

func (configVarString *ConfigVarString) UnmarshalJSON(b []byte) error

type DNSConfig

type DNSConfig struct {
	Servers []string `json:"servers"`
}

DNSConfig contains a machine's DNS configuration.

type GlobalConfigMapKeySelector

type GlobalConfigMapKeySelector GlobalObjectKeySelector

type GlobalObjectKeySelector

type GlobalObjectKeySelector struct {
	corev1.ObjectReference `json:",inline"`
	Key                    string `json:"key,omitempty"`
}

GlobalObjectKeySelector is needed as we can not use v1.SecretKeySelector because it is not cross namespace.

type GlobalSecretKeySelector

type GlobalSecretKeySelector GlobalObjectKeySelector

type NetworkConfig

type NetworkConfig struct {
	CIDR     string        `json:"cidr"`
	Gateway  string        `json:"gateway"`
	DNS      DNSConfig     `json:"dns"`
	IPFamily util.IPFamily `json:"ipFamily,omitempty"`
}

NetworkConfig contains a machine's static network configuration.

func (*NetworkConfig) GetIPFamily added in v1.47.0

func (n *NetworkConfig) GetIPFamily() util.IPFamily

func (*NetworkConfig) IsStaticIPConfig added in v1.48.0

func (n *NetworkConfig) IsStaticIPConfig() bool

type OperatingSystem

type OperatingSystem string

OperatingSystem defines the host operating system.

const (
	OperatingSystemUbuntu       OperatingSystem = "ubuntu"
	OperatingSystemCentOS       OperatingSystem = "centos"
	OperatingSystemAmazonLinux2 OperatingSystem = "amzn2"
	OperatingSystemRHEL         OperatingSystem = "rhel"
	OperatingSystemFlatcar      OperatingSystem = "flatcar"
	OperatingSystemRockyLinux   OperatingSystem = "rockylinux"
)

Jump to

Keyboard shortcuts

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