types

package
v1.60.0 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2024 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Index

Constants

View Source
const (
	AnxTokenEnv = "ANEXIA_TOKEN"

	CreateRequestTimeout = 15 * time.Minute
	GetRequestTimeout    = 1 * time.Minute
	DeleteRequestTimeout = 1 * time.Minute

	IPStateBound          = "Bound"
	IPStateUnbound        = "Unbound"
	IPProvisioningExpires = 1800 * time.Second

	VmxNet3NIC       = "vmxnet3"
	MachinePoweredOn = "poweredOn"
)

Variables

View Source
var StatusUpdateFailed = cloudprovidererrors.TerminalError{
	Reason:  common.UpdateMachineError,
	Message: "Failed to update the machine status",
}

Functions

func NewMultiError

func NewMultiError(errs ...error) error

Types

type MultiErrors

type MultiErrors []error

MultiError represent multiple errors at the same time.

func (MultiErrors) Error

func (r MultiErrors) Error() string

type NetworkAddressStatus

type NetworkAddressStatus struct {
	ReservedIP            string    `json:"reservedIP"`
	IPState               string    `json:"ipState"`
	IPProvisioningExpires time.Time `json:"ipProvisioningExpires"`
}

type NetworkStatus

type NetworkStatus struct {
	// each entry belongs to a config.Networks.Prefix entry at the same index
	Addresses []NetworkAddressStatus `json:"addresses"`
}

type ProviderStatus

type ProviderStatus struct {
	InstanceID       string         `json:"instanceID"`
	ProvisioningID   string         `json:"provisioningID"`
	DeprovisioningID string         `json:"deprovisioningID"`
	Conditions       []v1.Condition `json:"conditions,omitempty"`

	// each entry belongs to the config.Networks entry at the same index
	Networks []NetworkStatus `json:"networkStatus,omitempty"`
}

type RawConfig

type RawConfig struct {
	Token      providerconfigtypes.ConfigVarString `json:"token,omitempty"`
	LocationID providerconfigtypes.ConfigVarString `json:"locationID"`

	TemplateID    providerconfigtypes.ConfigVarString `json:"templateID"`
	Template      providerconfigtypes.ConfigVarString `json:"template"`
	TemplateBuild providerconfigtypes.ConfigVarString `json:"templateBuild"`

	CPUs               int    `json:"cpus"`
	CPUPerformanceType string `json:"cpuPerformanceType"`
	Memory             int    `json:"memory"`

	// Deprecated, use Disks instead.
	DiskSize int `json:"diskSize"`

	Disks []RawDisk `json:"disks"`

	// Deprecated, use Networks instead.
	VlanID providerconfigtypes.ConfigVarString `json:"vlanID"`

	// Configuration of the network interfaces. At least one entry with at
	// least one Prefix is required.
	Networks []RawNetwork `json:"networks"`
}

RawConfig contains all the configuration values for VMs to create, with some values maybe being fetched from secrets.

func GetConfig

func GetConfig(pconfig providerconfigtypes.Config) (*RawConfig, error)

type RawDisk

type RawDisk struct {
	Size            int                                 `json:"size"`
	PerformanceType providerconfigtypes.ConfigVarString `json:"performanceType"`
}

RawDisk specifies a single disk, with some values maybe being fetched from secrets.

type RawNetwork

type RawNetwork struct {
	// Identifier of the VLAN to attach this network interface to.
	VlanID providerconfigtypes.ConfigVarString `json:"vlan"`

	// IDs of prefixes to reserve IP addresses from for each Machine on network interface.
	//
	// Empty list means that no IPs will be reserved, but the interface will still be added.
	PrefixIDs []providerconfigtypes.ConfigVarString `json:"prefixes"`
}

RawNetwork specifies a single network interface.

Jump to

Keyboard shortcuts

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