proxmox

package
v0.17.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2023 License: MPL-2.0 Imports: 29 Imported by: 9

Documentation

Index

Constants

View Source
const (
	// DefaultRootAccount contains the default username and realm for the root account.
	DefaultRootAccount = "root@pam"
)

Variables

This section is empty.

Functions

func CloseOrLogError added in v0.12.0

func CloseOrLogError(ctx context.Context) func(io.Closer)

func ParseDiskSize added in v0.10.0

func ParseDiskSize(size *string) (int, error)

Types

type API added in v0.17.0

type API interface {
	Cluster() *cluster.Client
	VM(nodeName string, vmID int) *vm.Client
	Container(nodeName string, vmID int) *container.Client
}

type CustomAgent

type CustomAgent struct {
	Enabled         *types.CustomBool `json:"enabled,omitempty"   url:"enabled,int"`
	TrimClonedDisks *types.CustomBool `json:"fstrim_cloned_disks" url:"fstrim_cloned_disks,int"`
	Type            *string           `json:"type"                url:"type"`
}

CustomAgent handles QEMU agent parameters.

func (CustomAgent) EncodeValues

func (r CustomAgent) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomAgent struct to a URL vlaue.

func (*CustomAgent) UnmarshalJSON

func (r *CustomAgent) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomAgent string to an object.

type CustomAudioDevice

type CustomAudioDevice struct {
	Device  string  `json:"device" url:"device"`
	Driver  *string `json:"driver" url:"driver"`
	Enabled bool    `json:"-"      url:"-"`
}

CustomAudioDevice handles QEMU audio parameters.

func (CustomAudioDevice) EncodeValues

func (r CustomAudioDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomAudioDevice struct to a URL vlaue.

func (*CustomAudioDevice) UnmarshalJSON

func (r *CustomAudioDevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomAgent string to an object.

type CustomAudioDevices

type CustomAudioDevices []CustomAudioDevice

CustomAudioDevices handles QEMU audio device parameters.

func (CustomAudioDevices) EncodeValues

func (r CustomAudioDevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomAudioDevices array to multiple URL values.

type CustomCPUEmulation

type CustomCPUEmulation struct {
	Flags      *[]string         `json:"flags,omitempty"        url:"flags,omitempty,semicolon"`
	Hidden     *types.CustomBool `json:"hidden,omitempty"       url:"hidden,omitempty,int"`
	HVVendorID *string           `json:"hv-vendor-id,omitempty" url:"hv-vendor-id,omitempty"`
	Type       string            `json:"cputype,omitempty"      url:"cputype,omitempty"`
}

CustomCPUEmulation handles QEMU CPU emulation parameters.

func (CustomCPUEmulation) EncodeValues

func (r CustomCPUEmulation) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomCPUEmulation struct to a URL vlaue.

func (*CustomCPUEmulation) UnmarshalJSON

func (r *CustomCPUEmulation) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomCPUEmulation string to an object.

type CustomCloudInitConfig

type CustomCloudInitConfig struct {
	Files        *CustomCloudInitFiles     `json:"cicustom,omitempty"     url:"cicustom,omitempty"`
	IPConfig     []CustomCloudInitIPConfig `json:"ipconfig,omitempty"     url:"ipconfig,omitempty,numbered"`
	Nameserver   *string                   `json:"nameserver,omitempty"   url:"nameserver,omitempty"`
	Password     *string                   `json:"cipassword,omitempty"   url:"cipassword,omitempty"`
	SearchDomain *string                   `json:"searchdomain,omitempty" url:"searchdomain,omitempty"`
	SSHKeys      *CustomCloudInitSSHKeys   `json:"sshkeys,omitempty"      url:"sshkeys,omitempty"`
	Type         *string                   `json:"citype,omitempty"       url:"citype,omitempty"`
	Username     *string                   `json:"ciuser,omitempty"       url:"ciuser,omitempty"`
}

CustomCloudInitConfig handles QEMU cloud-init parameters.

func (CustomCloudInitConfig) EncodeValues

func (r CustomCloudInitConfig) EncodeValues(_ string, v *url.Values) error

EncodeValues converts a CustomCloudInitConfig struct to multiple URL values.

type CustomCloudInitFiles

type CustomCloudInitFiles struct {
	MetaVolume    *string `json:"meta,omitempty"    url:"meta,omitempty"`
	NetworkVolume *string `json:"network,omitempty" url:"network,omitempty"`
	UserVolume    *string `json:"user,omitempty"    url:"user,omitempty"`
	VendorVolume  *string `json:"vendor,omitempty"  url:"vendor,omitempty"`
}

CustomCloudInitFiles handles QEMU cloud-init custom files parameters.

func (*CustomCloudInitFiles) UnmarshalJSON

func (r *CustomCloudInitFiles) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomCloudInitFiles string to an object.

type CustomCloudInitIPConfig

type CustomCloudInitIPConfig struct {
	GatewayIPv4 *string `json:"gw,omitempty"  url:"gw,omitempty"`
	GatewayIPv6 *string `json:"gw6,omitempty" url:"gw6,omitempty"`
	IPv4        *string `json:"ip,omitempty"  url:"ip,omitempty"`
	IPv6        *string `json:"ip6,omitempty" url:"ip6,omitempty"`
}

CustomCloudInitIPConfig handles QEMU cloud-init IP configuration parameters.

func (*CustomCloudInitIPConfig) UnmarshalJSON

func (r *CustomCloudInitIPConfig) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomCloudInitIPConfig string to an object.

type CustomCloudInitSSHKeys

type CustomCloudInitSSHKeys []string

CustomCloudInitSSHKeys handles QEMU cloud-init SSH keys parameters.

func (*CustomCloudInitSSHKeys) UnmarshalJSON

func (r *CustomCloudInitSSHKeys) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomCloudInitFiles string to an object.

type CustomEFIDisk

type CustomEFIDisk struct {
	DiskSize   *int    `json:"size,omitempty"   url:"size,omitempty"`
	FileVolume string  `json:"file"             url:"file"`
	Format     *string `json:"format,omitempty" url:"format,omitempty"`
}

CustomEFIDisk handles QEMU EFI disk parameters.

func (CustomEFIDisk) EncodeValues

func (r CustomEFIDisk) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomEFIDisk struct to a URL vlaue.

func (*CustomEFIDisk) UnmarshalJSON added in v0.10.0

func (r *CustomEFIDisk) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomEFIDisk string to an object.

type CustomNUMADevice

type CustomNUMADevice struct {
	CPUIDs        []string  `json:"cpus"                url:"cpus,semicolon"`
	HostNodeNames *[]string `json:"hostnodes,omitempty" url:"hostnodes,omitempty,semicolon"`
	Memory        *float64  `json:"memory,omitempty"    url:"memory,omitempty"`
	Policy        *string   `json:"policy,omitempty"    url:"policy,omitempty"`
}

CustomNUMADevice handles QEMU NUMA device parameters.

func (CustomNUMADevice) EncodeValues

func (r CustomNUMADevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomNUMADevice struct to a URL vlaue.

type CustomNUMADevices

type CustomNUMADevices []CustomNUMADevice

CustomNUMADevices handles QEMU NUMA device parameters.

func (CustomNUMADevices) EncodeValues

func (r CustomNUMADevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomNUMADevices array to multiple URL values.

type CustomNetworkDevice

type CustomNetworkDevice struct {
	Model      string            `json:"model"               url:"model"`
	Bridge     *string           `json:"bridge,omitempty"    url:"bridge,omitempty"`
	Enabled    bool              `json:"-"                   url:"-"`
	Firewall   *types.CustomBool `json:"firewall,omitempty"  url:"firewall,omitempty,int"`
	LinkDown   *types.CustomBool `json:"link_down,omitempty" url:"link_down,omitempty,int"`
	MACAddress *string           `json:"macaddr,omitempty"   url:"macaddr,omitempty"`
	Queues     *int              `json:"queues,omitempty"    url:"queues,omitempty"`
	RateLimit  *float64          `json:"rate,omitempty"      url:"rate,omitempty"`
	Tag        *int              `json:"tag,omitempty"       url:"tag,omitempty"`
	MTU        *int              `json:"mtu,omitempty"       url:"mtu,omitempty"`
	Trunks     []int             `json:"trunks,omitempty"    url:"trunks,omitempty"`
}

CustomNetworkDevice handles QEMU network device parameters.

func (CustomNetworkDevice) EncodeValues

func (r CustomNetworkDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomNetworkDevice struct to a URL vlaue.

func (*CustomNetworkDevice) UnmarshalJSON

func (r *CustomNetworkDevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomNetworkDevice string to an object.

type CustomNetworkDevices

type CustomNetworkDevices []CustomNetworkDevice

CustomNetworkDevices handles QEMU network device parameters.

func (CustomNetworkDevices) EncodeValues

func (r CustomNetworkDevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomNetworkDevices array to multiple URL values.

type CustomNodeCommands

type CustomNodeCommands []string

CustomNodeCommands contains an array of commands to execute.

func (CustomNodeCommands) EncodeValues

func (r CustomNodeCommands) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomNodeCommands array to a JSON encoded URL vlaue.

type CustomPCIDevice

type CustomPCIDevice struct {
	DeviceIDs  []string          `json:"host"              url:"host,semicolon"`
	MDev       *string           `json:"mdev,omitempty"    url:"mdev,omitempty"`
	PCIExpress *types.CustomBool `json:"pcie,omitempty"    url:"pcie,omitempty,int"`
	ROMBAR     *types.CustomBool `json:"rombar,omitempty"  url:"rombar,omitempty,int"`
	ROMFile    *string           `json:"romfile,omitempty" url:"romfile,omitempty"`
	XVGA       *types.CustomBool `json:"x-vga,omitempty"   url:"x-vga,omitempty,int"`
}

CustomPCIDevice handles QEMU host PCI device mapping parameters.

func (CustomPCIDevice) EncodeValues

func (r CustomPCIDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomPCIDevice struct to a URL vlaue.

func (*CustomPCIDevice) UnmarshalJSON added in v0.9.0

func (r *CustomPCIDevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomPCIDevice string to an object.

type CustomPCIDevices

type CustomPCIDevices []CustomPCIDevice

CustomPCIDevices handles QEMU host PCI device mapping parameters.

func (CustomPCIDevices) EncodeValues

func (r CustomPCIDevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomPCIDevices array to multiple URL values.

type CustomSMBIOS

type CustomSMBIOS struct {
	Base64       *types.CustomBool `json:"base64,omitempty"       url:"base64,omitempty"`
	Family       *string           `json:"family,omitempty"       url:"family,omitempty"`
	Manufacturer *string           `json:"manufacturer,omitempty" url:"manufacturer,omitempty"`
	Product      *string           `json:"product,omitempty"      url:"product,omitempty"`
	Serial       *string           `json:"serial,omitempty"       url:"serial,omitempty"`
	SKU          *string           `json:"sku,omitempty"          url:"sku,omitempty"`
	UUID         *string           `json:"uuid,omitempty"         url:"uuid,omitempty"`
	Version      *string           `json:"version,omitempty"      url:"version,omitempty"`
}

CustomSMBIOS handles QEMU SMBIOS parameters.

func (CustomSMBIOS) EncodeValues

func (r CustomSMBIOS) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomSMBIOS struct to a URL vlaue.

func (*CustomSMBIOS) UnmarshalJSON

func (r *CustomSMBIOS) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomSMBIOS string to an object.

type CustomSerialDevices

type CustomSerialDevices []string

CustomSerialDevices handles QEMU serial device parameters.

func (CustomSerialDevices) EncodeValues

func (r CustomSerialDevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomSerialDevices array to multiple URL values.

type CustomSharedMemory

type CustomSharedMemory struct {
	Name *string `json:"name,omitempty" url:"name,omitempty"`
	Size int     `json:"size"           url:"size"`
}

CustomSharedMemory handles QEMU Inter-VM shared memory parameters.

func (CustomSharedMemory) EncodeValues

func (r CustomSharedMemory) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomSharedMemory struct to a URL vlaue.

func (*CustomSharedMemory) UnmarshalJSON

func (r *CustomSharedMemory) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomSharedMemory string to an object.

type CustomSpiceEnhancements

type CustomSpiceEnhancements struct {
	FolderSharing  *types.CustomBool `json:"foldersharing,omitempty"  url:"foldersharing,omitempty"`
	VideoStreaming *string           `json:"videostreaming,omitempty" url:"videostreaming,omitempty"`
}

CustomSpiceEnhancements handles QEMU spice enhancement parameters.

func (CustomSpiceEnhancements) EncodeValues

func (r CustomSpiceEnhancements) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomSpiceEnhancements struct to a URL vlaue.

type CustomStartupOrder

type CustomStartupOrder struct {
	Down  *int `json:"down,omitempty"  url:"down,omitempty"`
	Order *int `json:"order,omitempty" url:"order,omitempty"`
	Up    *int `json:"up,omitempty"    url:"up,omitempty"`
}

CustomStartupOrder handles QEMU startup order parameters.

func (CustomStartupOrder) EncodeValues

func (r CustomStartupOrder) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomStartupOrder struct to a URL vlaue.

type CustomStorageDevice

type CustomStorageDevice struct {
	AIO                     *string           `json:"aio,omitempty"         url:"aio,omitempty"`
	BackupEnabled           *types.CustomBool `json:"backup,omitempty"      url:"backup,omitempty,int"`
	BurstableReadSpeedMbps  *int              `json:"mbps_rd_max,omitempty" url:"mbps_rd_max,omitempty"`
	BurstableWriteSpeedMbps *int              `json:"mbps_wr_max,omitempty" url:"mbps_wr_max,omitempty"`
	Discard                 *string           `json:"discard,omitempty"     url:"discard,omitempty"`
	Enabled                 bool              `json:"-"                     url:"-"`
	FileVolume              string            `json:"file"                  url:"file"`
	Format                  *string           `json:"format,omitempty"      url:"format,omitempty"`
	IOThread                *types.CustomBool `json:"iothread,omitempty"    url:"iothread,omitempty,int"`
	SSD                     *types.CustomBool `json:"ssd,omitempty"         url:"ssd,omitempty,int"`
	MaxReadSpeedMbps        *int              `json:"mbps_rd,omitempty"     url:"mbps_rd,omitempty"`
	MaxWriteSpeedMbps       *int              `json:"mbps_wr,omitempty"     url:"mbps_wr,omitempty"`
	Media                   *string           `json:"media,omitempty"       url:"media,omitempty"`
	Size                    *string           `json:"size,omitempty"        url:"size,omitempty"`
	Interface               *string
	ID                      *string
	FileID                  *string
	SizeInt                 *int
}

CustomStorageDevice handles QEMU SATA device parameters.

func (CustomStorageDevice) EncodeValues

func (r CustomStorageDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomStorageDevice struct to a URL vlaue.

func (*CustomStorageDevice) UnmarshalJSON

func (r *CustomStorageDevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomStorageDevice string to an object.

type CustomStorageDevices

type CustomStorageDevices map[string]CustomStorageDevice

CustomStorageDevices handles QEMU SATA device parameters.

func (CustomStorageDevices) EncodeValues

func (r CustomStorageDevices) EncodeValues(_ string, v *url.Values) error

EncodeValues converts a CustomStorageDevices array to multiple URL values.

type CustomUSBDevice

type CustomUSBDevice struct {
	HostDevice string            `json:"host"           url:"host"`
	USB3       *types.CustomBool `json:"usb3,omitempty" url:"usb3,omitempty,int"`
}

CustomUSBDevice handles QEMU USB device parameters.

func (CustomUSBDevice) EncodeValues

func (r CustomUSBDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomUSBDevice struct to a URL vlaue.

type CustomUSBDevices

type CustomUSBDevices []CustomUSBDevice

CustomUSBDevices handles QEMU USB device parameters.

func (CustomUSBDevices) EncodeValues

func (r CustomUSBDevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomUSBDevices array to multiple URL values.

type CustomVGADevice

type CustomVGADevice struct {
	Memory *int    `json:"memory,omitempty" url:"memory,omitempty"`
	Type   *string `json:"type,omitempty"   url:"type,omitempty"`
}

CustomVGADevice handles QEMU VGA device parameters.

func (CustomVGADevice) EncodeValues

func (r CustomVGADevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomVGADevice struct to a URL vlaue.

func (*CustomVGADevice) UnmarshalJSON

func (r *CustomVGADevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomVGADevice string to an object.

type CustomVirtualIODevice

type CustomVirtualIODevice struct {
	AIO           *string           `json:"aio,omitempty"    url:"aio,omitempty"`
	BackupEnabled *types.CustomBool `json:"backup,omitempty" url:"backup,omitempty,int"`
	Enabled       bool              `json:"-"                url:"-"`
	FileVolume    string            `json:"file"             url:"file"`
}

CustomVirtualIODevice handles QEMU VirtIO device parameters.

func (CustomVirtualIODevice) EncodeValues

func (r CustomVirtualIODevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomVirtualIODevice struct to a URL vlaue.

type CustomVirtualIODevices

type CustomVirtualIODevices []CustomVirtualIODevice

CustomVirtualIODevices handles QEMU VirtIO device parameters.

func (CustomVirtualIODevices) EncodeValues

func (r CustomVirtualIODevices) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomVirtualIODevices array to multiple URL values.

type CustomWatchdogDevice

type CustomWatchdogDevice struct {
	Action *string `json:"action,omitempty" url:"action,omitempty"`
	Model  *string `json:"model"            url:"model"`
}

CustomWatchdogDevice handles QEMU watchdog device parameters.

func (CustomWatchdogDevice) EncodeValues

func (r CustomWatchdogDevice) EncodeValues(key string, v *url.Values) error

EncodeValues converts a CustomWatchdogDevice struct to a URL vlaue.

func (*CustomWatchdogDevice) UnmarshalJSON

func (r *CustomWatchdogDevice) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a CustomWatchdogDevice string to an object.

type VirtualEnvironmentACLGetResponseBody

type VirtualEnvironmentACLGetResponseBody struct {
	Data []*VirtualEnvironmentACLGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentACLGetResponseBody contains the body from an access control list response.

type VirtualEnvironmentACLGetResponseData

type VirtualEnvironmentACLGetResponseData struct {
	Path          string            `json:"path"`
	Propagate     *types.CustomBool `json:"propagate,omitempty"`
	RoleID        string            `json:"roleid"`
	Type          string            `json:"type"`
	UserOrGroupID string            `json:"ugid"`
}

VirtualEnvironmentACLGetResponseData contains the data from an access control list response.

type VirtualEnvironmentACLUpdateRequestBody

type VirtualEnvironmentACLUpdateRequestBody struct {
	Delete    *types.CustomBool `json:"delete,omitempty"    url:"delete,omitempty,int"`
	Groups    []string          `json:"groups,omitempty"    url:"groups,omitempty,comma"`
	Path      string            `json:"path"                url:"path"`
	Propagate *types.CustomBool `json:"propagate,omitempty" url:"propagate,omitempty,int"`
	Roles     []string          `json:"roles"               url:"roles,comma"`
	Users     []string          `json:"users,omitempty"     url:"users,omitempty,comma"`
}

VirtualEnvironmentACLUpdateRequestBody contains the data for an access control list update request.

type VirtualEnvironmentAuthenticationResponseBody

type VirtualEnvironmentAuthenticationResponseBody struct {
	Data *VirtualEnvironmentAuthenticationResponseData `json:"data,omitempty"`
}

VirtualEnvironmentAuthenticationResponseBody contains the body from an authentication response.

type VirtualEnvironmentAuthenticationResponseCapabilities

type VirtualEnvironmentAuthenticationResponseCapabilities struct {
	Access     *types.CustomPrivileges `json:"access,omitempty"`
	Datacenter *types.CustomPrivileges `json:"dc,omitempty"`
	Nodes      *types.CustomPrivileges `json:"nodes,omitempty"`
	Storage    *types.CustomPrivileges `json:"storage,omitempty"`
	VMs        *types.CustomPrivileges `json:"vms,omitempty"`
}

VirtualEnvironmentAuthenticationResponseCapabilities contains the supported capabilities for a session.

type VirtualEnvironmentAuthenticationResponseData

type VirtualEnvironmentAuthenticationResponseData struct {
	ClusterName         *string                                               `json:"clustername,omitempty"`
	CSRFPreventionToken *string                                               `json:"CSRFPreventionToken,omitempty"`
	Capabilities        *VirtualEnvironmentAuthenticationResponseCapabilities `json:"cap,omitempty"`
	Ticket              *string                                               `json:"ticket,omitempty"`
	Username            string                                                `json:"username"`
}

VirtualEnvironmentAuthenticationResponseData contains the data from an authentication response.

type VirtualEnvironmentCertificateDeleteRequestBody

type VirtualEnvironmentCertificateDeleteRequestBody struct {
	Restart *types.CustomBool `json:"restart,omitempty" url:"restart,omitempty,int"`
}

VirtualEnvironmentCertificateDeleteRequestBody contains the data for a custom certificate delete request.

type VirtualEnvironmentCertificateListResponseBody

type VirtualEnvironmentCertificateListResponseBody struct {
	Data *[]VirtualEnvironmentCertificateListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentCertificateListResponseBody contains the body from a certificate list response.

type VirtualEnvironmentCertificateListResponseData

type VirtualEnvironmentCertificateListResponseData struct {
	Certificates            *string                `json:"pem,omitempty"`
	FileName                *string                `json:"filename,omitempty"`
	Fingerprint             *string                `json:"fingerprint,omitempty"`
	Issuer                  *string                `json:"issuer,omitempty"`
	NotAfter                *types.CustomTimestamp `json:"notafter,omitempty"`
	NotBefore               *types.CustomTimestamp `json:"notbefore,omitempty"`
	PublicKeyBits           *int                   `json:"public-key-bits,omitempty"`
	PublicKeyType           *string                `json:"public-key-type,omitempty"`
	Subject                 *string                `json:"subject,omitempty"`
	SubjectAlternativeNames *[]string              `json:"san,omitempty"`
}

VirtualEnvironmentCertificateListResponseData contains the data from a certificate list response.

type VirtualEnvironmentCertificateUpdateRequestBody

type VirtualEnvironmentCertificateUpdateRequestBody struct {
	Certificates string            `json:"certificates"      url:"certificates"`
	Force        *types.CustomBool `json:"force,omitempty"   url:"force,omitempty,int"`
	PrivateKey   *string           `json:"key,omitempty"     url:"key,omitempty"`
	Restart      *types.CustomBool `json:"restart,omitempty" url:"restart,omitempty,int"`
}

VirtualEnvironmentCertificateUpdateRequestBody contains the body for a custom certificate update request.

type VirtualEnvironmentClient

type VirtualEnvironmentClient struct {
	Endpoint string
	Insecure bool
	OTP      *string
	Password string
	Username string
	// contains filtered or unexported fields
}

VirtualEnvironmentClient implements an API client for the Proxmox Virtual Environment API.

func NewVirtualEnvironmentClient

func NewVirtualEnvironmentClient(
	endpoint, username, password, otp string,
	insecure bool,
) (*VirtualEnvironmentClient, error)

NewVirtualEnvironmentClient creates and initializes a VirtualEnvironmentClient instance.

func (*VirtualEnvironmentClient) API added in v0.17.0

func (c *VirtualEnvironmentClient) API() API

func (*VirtualEnvironmentClient) Authenticate

func (c *VirtualEnvironmentClient) Authenticate(ctx context.Context, reset bool) error

Authenticate authenticates against the specified endpoint.

func (*VirtualEnvironmentClient) AuthenticateRequest

func (c *VirtualEnvironmentClient) AuthenticateRequest(ctx context.Context, req *http.Request) error

AuthenticateRequest adds authentication data to a new request.

func (*VirtualEnvironmentClient) ChangeUserPassword

func (c *VirtualEnvironmentClient) ChangeUserPassword(
	ctx context.Context,
	id, password string,
) error

ChangeUserPassword changes a user's password.

func (*VirtualEnvironmentClient) CloneContainer

CloneContainer clones a container.

func (*VirtualEnvironmentClient) CloneVM

func (c *VirtualEnvironmentClient) CloneVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	retries int,
	d *VirtualEnvironmentVMCloneRequestBody,
	timeout int,
) error

CloneVM clones a virtual machine.

func (*VirtualEnvironmentClient) CreateContainer

CreateContainer creates a container.

func (*VirtualEnvironmentClient) CreateGroup

CreateGroup creates an access group.

func (*VirtualEnvironmentClient) CreatePool

CreatePool creates a pool.

func (*VirtualEnvironmentClient) CreateRole

CreateRole creates an access role.

func (*VirtualEnvironmentClient) CreateUser

CreateUser creates a user.

func (*VirtualEnvironmentClient) CreateVM

CreateVM creates a virtual machine.

func (*VirtualEnvironmentClient) DeleteCertificate

DeleteCertificate deletes the custom certificate for a node.

func (*VirtualEnvironmentClient) DeleteContainer

func (c *VirtualEnvironmentClient) DeleteContainer(
	ctx context.Context,
	nodeName string,
	vmID int,
) error

DeleteContainer deletes a container.

func (*VirtualEnvironmentClient) DeleteDatastoreFile

func (c *VirtualEnvironmentClient) DeleteDatastoreFile(
	ctx context.Context,
	nodeName, datastoreID, volumeID string,
) error

DeleteDatastoreFile deletes a file in a datastore.

func (*VirtualEnvironmentClient) DeleteGroup

func (c *VirtualEnvironmentClient) DeleteGroup(ctx context.Context, id string) error

DeleteGroup deletes an access group.

func (*VirtualEnvironmentClient) DeletePool

func (c *VirtualEnvironmentClient) DeletePool(ctx context.Context, id string) error

DeletePool deletes a pool.

func (*VirtualEnvironmentClient) DeleteRole

func (c *VirtualEnvironmentClient) DeleteRole(ctx context.Context, id string) error

DeleteRole deletes an access role.

func (*VirtualEnvironmentClient) DeleteUser

func (c *VirtualEnvironmentClient) DeleteUser(ctx context.Context, id string) error

DeleteUser deletes an user.

func (*VirtualEnvironmentClient) DeleteVM

func (c *VirtualEnvironmentClient) DeleteVM(ctx context.Context, nodeName string, vmID int) error

DeleteVM deletes a virtual machine.

func (*VirtualEnvironmentClient) DoRequest

func (c *VirtualEnvironmentClient) DoRequest(
	ctx context.Context,
	method, path string,
	requestBody, responseBody interface{},
) error

DoRequest performs a HTTP request against a JSON API endpoint.

func (*VirtualEnvironmentClient) ExecuteNodeCommands

func (c *VirtualEnvironmentClient) ExecuteNodeCommands(
	ctx context.Context,
	nodeName string,
	commands []string,
) error

ExecuteNodeCommands executes commands on a given node.

func (*VirtualEnvironmentClient) ExpandPath added in v0.17.0

func (c *VirtualEnvironmentClient) ExpandPath(path string) string

func (*VirtualEnvironmentClient) GetACL

GetACL retrieves the access control list.

func (*VirtualEnvironmentClient) GetContainer

GetContainer retrieves a container.

func (*VirtualEnvironmentClient) GetContainerStatus

GetContainerStatus retrieves the status for a container.

func (*VirtualEnvironmentClient) GetDNS

GetDNS retrieves the DNS configuration for a node.

func (*VirtualEnvironmentClient) GetDatastoreStatus added in v0.8.0

func (c *VirtualEnvironmentClient) GetDatastoreStatus(
	ctx context.Context,
	nodeName, datastoreID string,
) (*VirtualEnvironmentDatastoreGetStatusResponseData, error)

GetDatastoreStatus gets status information for a given datastore.

func (*VirtualEnvironmentClient) GetGroup

GetGroup retrieves an access group.

func (*VirtualEnvironmentClient) GetHosts

GetHosts retrieves the Hosts configuration for a node.

func (*VirtualEnvironmentClient) GetNodeIP

func (c *VirtualEnvironmentClient) GetNodeIP(
	ctx context.Context,
	nodeName string,
) (*string, error)

GetNodeIP retrieves the IP address of a node.

func (*VirtualEnvironmentClient) GetNodeTaskStatus

GetNodeTaskStatus retrieves the status of a node task.

func (*VirtualEnvironmentClient) GetNodeTime

GetNodeTime retrieves the time information for a node.

func (*VirtualEnvironmentClient) GetPool

GetPool retrieves a pool.

func (*VirtualEnvironmentClient) GetRole

GetRole retrieves an access role.

func (*VirtualEnvironmentClient) GetUser

GetUser retrieves a user.

func (*VirtualEnvironmentClient) GetVM

GetVM retrieves a virtual machine.

func (*VirtualEnvironmentClient) GetVMID

func (c *VirtualEnvironmentClient) GetVMID(ctx context.Context) (*int, error)

GetVMID retrieves the next available VM identifier.

func (*VirtualEnvironmentClient) GetVMNetworkInterfacesFromAgent

func (c *VirtualEnvironmentClient) GetVMNetworkInterfacesFromAgent(
	ctx context.Context,
	nodeName string,
	vmID int,
) (*VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData, error)

GetVMNetworkInterfacesFromAgent retrieves the network interfaces reported by the QEMU agent.

func (*VirtualEnvironmentClient) GetVMStatus

GetVMStatus retrieves the status for a virtual machine.

func (*VirtualEnvironmentClient) ListCertificates

ListCertificates retrieves the list of certificates for a node.

func (*VirtualEnvironmentClient) ListDatastoreFiles

func (c *VirtualEnvironmentClient) ListDatastoreFiles(
	ctx context.Context,
	nodeName, datastoreID string,
) ([]*VirtualEnvironmentDatastoreFileListResponseData, error)

ListDatastoreFiles retrieves a list of the files in a datastore.

func (*VirtualEnvironmentClient) ListDatastores

ListDatastores retrieves a list of nodes.

func (*VirtualEnvironmentClient) ListGroups

ListGroups retrieves a list of access groups.

func (*VirtualEnvironmentClient) ListNodeNetworkDevices

ListNodeNetworkDevices retrieves a list of network devices for a specific nodes.

func (*VirtualEnvironmentClient) ListNodes

ListNodes retrieves a list of nodes.

func (*VirtualEnvironmentClient) ListPools

ListPools retrieves a list of pools.

func (*VirtualEnvironmentClient) ListRoles

ListRoles retrieves a list of access roles.

func (*VirtualEnvironmentClient) ListUsers

ListUsers retrieves a list of users.

func (*VirtualEnvironmentClient) ListVMs

ListVMs retrieves a list of virtual machines.

func (*VirtualEnvironmentClient) MigrateVM added in v0.8.0

func (c *VirtualEnvironmentClient) MigrateVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMMigrateRequestBody,
	timeout int,
) error

MigrateVM migrates a virtual machine.

func (*VirtualEnvironmentClient) MigrateVMAsync added in v0.8.0

func (c *VirtualEnvironmentClient) MigrateVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMMigrateRequestBody,
) (*string, error)

MigrateVMAsync migrates a virtual machine asynchronously.

func (*VirtualEnvironmentClient) MoveVMDisk

func (c *VirtualEnvironmentClient) MoveVMDisk(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMMoveDiskRequestBody,
	timeout int,
) error

MoveVMDisk moves a virtual machine disk.

func (*VirtualEnvironmentClient) MoveVMDiskAsync

func (c *VirtualEnvironmentClient) MoveVMDiskAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMMoveDiskRequestBody,
) (*string, error)

MoveVMDiskAsync moves a virtual machine disk asynchronously.

func (*VirtualEnvironmentClient) OpenNodeShell

func (c *VirtualEnvironmentClient) OpenNodeShell(
	ctx context.Context,
	nodeName string,
) (*ssh.Client, error)

OpenNodeShell establishes a new SSH connection to a node.

func (*VirtualEnvironmentClient) RebootContainer

RebootContainer reboots a container.

func (*VirtualEnvironmentClient) RebootVM

func (c *VirtualEnvironmentClient) RebootVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMRebootRequestBody,
	timeout int,
) error

RebootVM reboots a virtual machine.

func (*VirtualEnvironmentClient) RebootVMAsync

func (c *VirtualEnvironmentClient) RebootVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMRebootRequestBody,
) (*string, error)

RebootVMAsync reboots a virtual machine asynchronously.

func (*VirtualEnvironmentClient) ResizeVMDisk

ResizeVMDisk resizes a virtual machine disk.

func (*VirtualEnvironmentClient) ShutdownContainer

ShutdownContainer shuts down a container.

func (*VirtualEnvironmentClient) ShutdownVM

func (c *VirtualEnvironmentClient) ShutdownVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMShutdownRequestBody,
	timeout int,
) error

ShutdownVM shuts down a virtual machine.

func (*VirtualEnvironmentClient) ShutdownVMAsync

func (c *VirtualEnvironmentClient) ShutdownVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMShutdownRequestBody,
) (*string, error)

ShutdownVMAsync shuts down a virtual machine asynchronously.

func (*VirtualEnvironmentClient) StartContainer

func (c *VirtualEnvironmentClient) StartContainer(
	ctx context.Context,
	nodeName string,
	vmID int,
) error

StartContainer starts a container.

func (*VirtualEnvironmentClient) StartVM

func (c *VirtualEnvironmentClient) StartVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
) error

StartVM starts a virtual machine.

func (*VirtualEnvironmentClient) StartVMAsync

func (c *VirtualEnvironmentClient) StartVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
) (*string, error)

StartVMAsync starts a virtual machine asynchronously.

func (*VirtualEnvironmentClient) StopContainer

func (c *VirtualEnvironmentClient) StopContainer(
	ctx context.Context,
	nodeName string,
	vmID int,
) error

StopContainer stops a container immediately.

func (*VirtualEnvironmentClient) StopVM

func (c *VirtualEnvironmentClient) StopVM(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
) error

StopVM stops a virtual machine.

func (*VirtualEnvironmentClient) StopVMAsync

func (c *VirtualEnvironmentClient) StopVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
) (*string, error)

StopVMAsync stops a virtual machine asynchronously.

func (*VirtualEnvironmentClient) UpdateACL

UpdateACL updates the access control list.

func (*VirtualEnvironmentClient) UpdateCertificate

UpdateCertificate updates the custom certificate for a node.

func (*VirtualEnvironmentClient) UpdateContainer

UpdateContainer updates a container.

func (*VirtualEnvironmentClient) UpdateDNS

UpdateDNS updates the DNS configuration for a node.

func (*VirtualEnvironmentClient) UpdateGroup

UpdateGroup updates an access group.

func (*VirtualEnvironmentClient) UpdateHosts

UpdateHosts updates the Hosts configuration for a node.

func (*VirtualEnvironmentClient) UpdateNodeTime

UpdateNodeTime updates the time on a node.

func (*VirtualEnvironmentClient) UpdatePool

UpdatePool updates a pool.

func (*VirtualEnvironmentClient) UpdateRole

UpdateRole updates an access role.

func (*VirtualEnvironmentClient) UpdateUser

UpdateUser updates a user.

func (*VirtualEnvironmentClient) UpdateVM

UpdateVM updates a virtual machine.

func (*VirtualEnvironmentClient) UpdateVMAsync

func (c *VirtualEnvironmentClient) UpdateVMAsync(
	ctx context.Context,
	nodeName string,
	vmID int,
	d *VirtualEnvironmentVMUpdateRequestBody,
) (*string, error)

UpdateVMAsync updates a virtual machine asynchronously.

func (*VirtualEnvironmentClient) UploadFileToDatastore

UploadFileToDatastore uploads a file to a datastore.

func (*VirtualEnvironmentClient) ValidateResponseCode

func (c *VirtualEnvironmentClient) ValidateResponseCode(res *http.Response) error

ValidateResponseCode ensures that a response is valid.

func (*VirtualEnvironmentClient) Version

Version retrieves the version information.

func (*VirtualEnvironmentClient) WaitForContainerLock

func (c *VirtualEnvironmentClient) WaitForContainerLock(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
	delay int,
	ignoreErrorResponse bool,
) error

WaitForContainerLock waits for a container lock to be released.

func (*VirtualEnvironmentClient) WaitForContainerState

func (c *VirtualEnvironmentClient) WaitForContainerState(
	ctx context.Context,
	nodeName string,
	vmID int,
	state string,
	timeout int,
	delay int,
) error

WaitForContainerState waits for a container to reach a specific state.

func (*VirtualEnvironmentClient) WaitForNetworkInterfacesFromVMAgent

func (c *VirtualEnvironmentClient) WaitForNetworkInterfacesFromVMAgent(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
	delay int,
	waitForIP bool,
) (*VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData, error)

WaitForNetworkInterfacesFromVMAgent waits for a virtual machine's QEMU agent to publish the network interfaces.

func (*VirtualEnvironmentClient) WaitForNoNetworkInterfacesFromVMAgent

func (c *VirtualEnvironmentClient) WaitForNoNetworkInterfacesFromVMAgent(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
	delay int,
) error

WaitForNoNetworkInterfacesFromVMAgent waits for a virtual machine's QEMU agent to unpublish the network interfaces.

func (*VirtualEnvironmentClient) WaitForNodeTask

func (c *VirtualEnvironmentClient) WaitForNodeTask(
	ctx context.Context,
	nodeName string,
	upid string,
	timeout int,
	delay int,
) error

WaitForNodeTask waits for a specific node task to complete.

func (*VirtualEnvironmentClient) WaitForVMConfigUnlock

func (c *VirtualEnvironmentClient) WaitForVMConfigUnlock(
	ctx context.Context,
	nodeName string,
	vmID int,
	timeout int,
	delay int,
	ignoreErrorResponse bool,
) error

WaitForVMConfigUnlock waits for a virtual machine configuration to become unlocked.

func (*VirtualEnvironmentClient) WaitForVMState

func (c *VirtualEnvironmentClient) WaitForVMState(
	ctx context.Context,
	nodeName string,
	vmID int,
	state string,
	timeout int,
	delay int,
) error

WaitForVMState waits for a virtual machine to reach a specific state.

type VirtualEnvironmentContainerCloneRequestBody

type VirtualEnvironmentContainerCloneRequestBody struct {
	BandwidthLimit *int              `json:"bwlimit,omitempty"     url:"bwlimit,omitempty"`
	Description    *string           `json:"description,omitempty" url:"description,omitempty"`
	FullCopy       *types.CustomBool `json:"full,omitempty"        url:"full,omitempty,int"`
	Hostname       *string           `json:"hostname,omitempty"    url:"hostname,omitempty"`
	PoolID         *string           `json:"pool,omitempty"        url:"pool,omitempty"`
	SnapshotName   *string           `json:"snapname,omitempty"    url:"snapname,omitempty"`
	TargetNodeName *string           `json:"target,omitempty"      url:"target,omitempty"`
	TargetStorage  *string           `json:"storage,omitempty"     url:"storage,omitempty"`
	VMIDNew        int               `json:"newid"                 url:"newid"`
}

VirtualEnvironmentContainerCloneRequestBody contains the data for an container clone request.

type VirtualEnvironmentContainerCreateRequestBody

type VirtualEnvironmentContainerCreateRequestBody struct {
	BandwidthLimit       *float64                                               `json:"bwlimit,omitempty"              url:"bwlimit,omitempty"`
	ConsoleEnabled       *types.CustomBool                                      `json:"console,omitempty"              url:"console,omitempty,int"`
	ConsoleMode          *string                                                `json:"cmode,omitempty"                url:"cmode,omitempty"`
	CPUArchitecture      *string                                                `json:"arch,omitempty"                 url:"arch,omitempty"`
	CPUCores             *int                                                   `json:"cores,omitempty"                url:"cores,omitempty"`
	CPULimit             *int                                                   `json:"cpulimit,omitempty"             url:"cpulimit,omitempty"`
	CPUUnits             *int                                                   `json:"cpuunits,omitempty"             url:"cpuunits,omitempty"`
	DatastoreID          *string                                                `json:"storage,omitempty"              url:"storage,omitempty"`
	DedicatedMemory      *int                                                   `json:"memory,omitempty"               url:"memory,omitempty"`
	Delete               []string                                               `json:"delete,omitempty"               url:"delete,omitempty"`
	Description          *string                                                `json:"description,omitempty"          url:"description,omitempty"`
	DNSDomain            *string                                                `json:"searchdomain,omitempty"         url:"searchdomain,omitempty"`
	DNSServer            *string                                                `json:"nameserver,omitempty"           url:"nameserver,omitempty"`
	Features             *VirtualEnvironmentContainerCustomFeatures             `json:"features,omitempty"             url:"features,omitempty"`
	Force                *types.CustomBool                                      `json:"force,omitempty"                url:"force,omitempty,int"`
	HookScript           *string                                                `json:"hookscript,omitempty"           url:"hookscript,omitempty"`
	Hostname             *string                                                `json:"hostname,omitempty"             url:"hostname,omitempty"`
	IgnoreUnpackErrors   *types.CustomBool                                      `json:"ignore-unpack-errors,omitempty" url:"force,omitempty,int"`
	Lock                 *string                                                `json:"lock,omitempty"                 url:"lock,omitempty,int"`
	MountPoints          VirtualEnvironmentContainerCustomMountPointArray       `json:"mp,omitempty"                   url:"mp,omitempty,numbered"`
	NetworkInterfaces    VirtualEnvironmentContainerCustomNetworkInterfaceArray `json:"net,omitempty"                  url:"net,omitempty,numbered"`
	OSTemplateFileVolume *string                                                `json:"ostemplate,omitempty"           url:"ostemplate,omitempty"`
	OSType               *string                                                `json:"ostype,omitempty"               url:"ostype,omitempty"`
	Password             *string                                                `json:"password,omitempty"             url:"password,omitempty"`
	PoolID               *string                                                `json:"pool,omitempty"                 url:"pool,omitempty"`
	Protection           *types.CustomBool                                      `json:"protection,omitempty"           url:"protection,omitempty,int"`
	Restore              *types.CustomBool                                      `json:"restore,omitempty"              url:"restore,omitempty,int"`
	RootFS               *VirtualEnvironmentContainerCustomRootFS               `json:"rootfs,omitempty"               url:"rootfs,omitempty"`
	SSHKeys              *VirtualEnvironmentContainerCustomSSHKeys              `json:"ssh-public-keys,omitempty"      url:"ssh-public-keys,omitempty"`
	Start                *types.CustomBool                                      `json:"start,omitempty"                url:"start,omitempty,int"`
	StartOnBoot          *types.CustomBool                                      `json:"onboot,omitempty"               url:"onboot,omitempty,int"`
	StartupBehavior      *VirtualEnvironmentContainerCustomStartupBehavior      `json:"startup,omitempty"              url:"startup,omitempty"`
	Swap                 *int                                                   `json:"swap,omitempty"                 url:"swap,omitempty"`
	Tags                 *string                                                `json:"tags,omitempty"                 url:"tags,omitempty"`
	Template             *types.CustomBool                                      `json:"template,omitempty"             url:"template,omitempty,int"`
	TTY                  *int                                                   `json:"tty,omitempty"                  url:"tty,omitempty"`
	Unique               *types.CustomBool                                      `json:"unique,omitempty"               url:"unique,omitempty,int"`
	Unprivileged         *types.CustomBool                                      `json:"unprivileged,omitempty"         url:"unprivileged,omitempty,int"`
	VMID                 *int                                                   `json:"vmid,omitempty"                 url:"vmid,omitempty"`
}

VirtualEnvironmentContainerCreateRequestBody contains the data for an user create request.

type VirtualEnvironmentContainerCustomFeatures

type VirtualEnvironmentContainerCustomFeatures struct {
	FUSE       *types.CustomBool `json:"fuse,omitempty"    url:"fuse,omitempty,int"`
	KeyControl *types.CustomBool `json:"keyctl,omitempty"  url:"keyctl,omitempty,int"`
	MountTypes *[]string         `json:"mount,omitempty"   url:"mount,omitempty"`
	Nesting    *types.CustomBool `json:"nesting,omitempty" url:"nesting,omitempty,int"`
}

VirtualEnvironmentContainerCustomFeatures contains the values for the "features" property.

func (VirtualEnvironmentContainerCustomFeatures) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomFeatures struct to a URL vlaue.

func (*VirtualEnvironmentContainerCustomFeatures) UnmarshalJSON

UnmarshalJSON converts a VirtualEnvironmentContainerCustomFeatures string to an object.

type VirtualEnvironmentContainerCustomMountPoint

type VirtualEnvironmentContainerCustomMountPoint struct {
	ACL          *types.CustomBool `json:"acl,omitempty"          url:"acl,omitempty,int"`
	Backup       *types.CustomBool `json:"backup,omitempty"       url:"backup,omitempty,int"`
	DiskSize     *string           `json:"size,omitempty"         url:"size,omitempty"`
	Enabled      bool              `json:"-"                      url:"-"`
	MountOptions *[]string         `json:"mountoptions,omitempty" url:"mountoptions,omitempty"`
	MountPoint   string            `json:"mp"                     url:"mp"`
	Quota        *types.CustomBool `json:"quota,omitempty"        url:"quota,omitempty,int"`
	ReadOnly     *types.CustomBool `json:"ro,omitempty"           url:"ro,omitempty,int"`
	Replicate    *types.CustomBool `json:"replicate,omitempty"    url:"replicate,omitempty,int"`
	Shared       *types.CustomBool `json:"shared,omitempty"       url:"shared,omitempty,int"`
	Volume       string            `json:"volume"                 url:"volume"`
}

VirtualEnvironmentContainerCustomMountPoint contains the values for the "mp[n]" properties.

func (VirtualEnvironmentContainerCustomMountPoint) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomMountPoint struct to a URL vlaue.

func (*VirtualEnvironmentContainerCustomMountPoint) UnmarshalJSON

UnmarshalJSON converts a VirtualEnvironmentContainerCustomMountPoint string to an object.

type VirtualEnvironmentContainerCustomMountPointArray

type VirtualEnvironmentContainerCustomMountPointArray []VirtualEnvironmentContainerCustomMountPoint

VirtualEnvironmentContainerCustomMountPointArray is an array of VirtualEnvironmentContainerCustomMountPoint.

func (VirtualEnvironmentContainerCustomMountPointArray) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomMountPointArray array to multiple URL values.

type VirtualEnvironmentContainerCustomNetworkInterface

type VirtualEnvironmentContainerCustomNetworkInterface struct {
	Bridge      *string           `json:"bridge,omitempty"   url:"bridge,omitempty"`
	Enabled     bool              `json:"-"                  url:"-"`
	Firewall    *types.CustomBool `json:"firewall,omitempty" url:"firewall,omitempty,int"`
	IPv4Address *string           `json:"ip,omitempty"       url:"ip,omitempty"`
	IPv4Gateway *string           `json:"gw,omitempty"       url:"gw,omitempty"`
	IPv6Address *string           `json:"ip6,omitempty"      url:"ip6,omitempty"`
	IPv6Gateway *string           `json:"gw6,omitempty"      url:"gw6,omitempty"`
	MACAddress  *string           `json:"hwaddr,omitempty"   url:"hwaddr,omitempty"`
	MTU         *int              `json:"mtu,omitempty"      url:"mtu,omitempty"`
	Name        string            `json:"name"               url:"name"`
	RateLimit   *float64          `json:"rate,omitempty"     url:"rate,omitempty"`
	Tag         *int              `json:"tag,omitempty"      url:"tag,omitempty"`
	Trunks      *[]int            `json:"trunks,omitempty"   url:"trunks,omitempty"`
	Type        *string           `json:"type,omitempty"     url:"type,omitempty"`
}

VirtualEnvironmentContainerCustomNetworkInterface contains the values for the "net[n]" properties.

func (VirtualEnvironmentContainerCustomNetworkInterface) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomNetworkInterface struct to a URL vlaue.

func (*VirtualEnvironmentContainerCustomNetworkInterface) UnmarshalJSON

UnmarshalJSON converts a VirtualEnvironmentContainerCustomNetworkInterface string to an object.

type VirtualEnvironmentContainerCustomNetworkInterfaceArray

type VirtualEnvironmentContainerCustomNetworkInterfaceArray []VirtualEnvironmentContainerCustomNetworkInterface

VirtualEnvironmentContainerCustomNetworkInterfaceArray is an array of VirtualEnvironmentContainerCustomNetworkInterface.

func (VirtualEnvironmentContainerCustomNetworkInterfaceArray) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomNetworkInterfaceArray array to multiple URL values.

type VirtualEnvironmentContainerCustomRootFS

type VirtualEnvironmentContainerCustomRootFS struct {
	ACL          *types.CustomBool `json:"acl,omitempty"          url:"acl,omitempty,int"`
	DiskSize     *string           `json:"size,omitempty"         url:"size,omitempty"`
	MountOptions *[]string         `json:"mountoptions,omitempty" url:"mountoptions,omitempty"`
	Quota        *types.CustomBool `json:"quota,omitempty"        url:"quota,omitempty,int"`
	ReadOnly     *types.CustomBool `json:"ro,omitempty"           url:"ro,omitempty,int"`
	Replicate    *types.CustomBool `json:"replicate,omitempty"    url:"replicate,omitempty,int"`
	Shared       *types.CustomBool `json:"shared,omitempty"       url:"shared,omitempty,int"`
	Volume       string            `json:"volume"                 url:"volume"`
}

VirtualEnvironmentContainerCustomRootFS contains the values for the "rootfs" property.

func (VirtualEnvironmentContainerCustomRootFS) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomRootFS struct to a URL vlaue.

func (*VirtualEnvironmentContainerCustomRootFS) UnmarshalJSON

func (r *VirtualEnvironmentContainerCustomRootFS) UnmarshalJSON(b []byte) error

UnmarshalJSON converts a VirtualEnvironmentContainerCustomRootFS string to an object.

type VirtualEnvironmentContainerCustomSSHKeys

type VirtualEnvironmentContainerCustomSSHKeys []string

VirtualEnvironmentContainerCustomSSHKeys contains the values for the "ssh-public-keys" property.

func (VirtualEnvironmentContainerCustomSSHKeys) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomSSHKeys array to a URL vlaue.

type VirtualEnvironmentContainerCustomStartupBehavior

type VirtualEnvironmentContainerCustomStartupBehavior struct {
	Down  *int `json:"down,omitempty"  url:"down,omitempty"`
	Order *int `json:"order,omitempty" url:"order,omitempty"`
	Up    *int `json:"up,omitempty"    url:"up,omitempty"`
}

VirtualEnvironmentContainerCustomStartupBehavior contains the values for the "startup" property.

func (VirtualEnvironmentContainerCustomStartupBehavior) EncodeValues

EncodeValues converts a VirtualEnvironmentContainerCustomStartupBehavior struct to a URL vlaue.

func (*VirtualEnvironmentContainerCustomStartupBehavior) UnmarshalJSON

UnmarshalJSON converts a VirtualEnvironmentContainerCustomStartupBehavior string to an object.

type VirtualEnvironmentContainerGetResponseBody

type VirtualEnvironmentContainerGetResponseBody struct {
	Data *VirtualEnvironmentContainerGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentContainerGetResponseBody contains the body from an user get response.

type VirtualEnvironmentContainerGetResponseData

type VirtualEnvironmentContainerGetResponseData struct {
	ConsoleEnabled    *types.CustomBool                                  `json:"console,omitempty"`
	ConsoleMode       *string                                            `json:"cmode,omitempty"`
	CPUArchitecture   *string                                            `json:"arch,omitempty"`
	CPUCores          *int                                               `json:"cores,omitempty"`
	CPULimit          *int                                               `json:"cpulimit,omitempty"`
	CPUUnits          *int                                               `json:"cpuunits,omitempty"`
	DedicatedMemory   *int                                               `json:"memory,omitempty"`
	Description       *string                                            `json:"description,omitempty"`
	Digest            string                                             `json:"digest"`
	DNSDomain         *string                                            `json:"searchdomain,omitempty"`
	DNSServer         *string                                            `json:"nameserver,omitempty"`
	Features          *VirtualEnvironmentContainerCustomFeatures         `json:"features,omitempty"`
	HookScript        *string                                            `json:"hookscript,omitempty"`
	Hostname          *string                                            `json:"hostname,omitempty"`
	Lock              *types.CustomBool                                  `json:"lock,omitempty"`
	LXCConfiguration  *[][2]string                                       `json:"lxc,omitempty"`
	MountPoint0       VirtualEnvironmentContainerCustomMountPoint        `json:"mp0,omitempty"`
	MountPoint1       VirtualEnvironmentContainerCustomMountPoint        `json:"mp1,omitempty"`
	MountPoint2       VirtualEnvironmentContainerCustomMountPoint        `json:"mp2,omitempty"`
	MountPoint3       VirtualEnvironmentContainerCustomMountPoint        `json:"mp3,omitempty"`
	NetworkInterface0 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net0,omitempty"`
	NetworkInterface1 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net1,omitempty"`
	NetworkInterface2 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net2,omitempty"`
	NetworkInterface3 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net3,omitempty"`
	NetworkInterface4 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net4,omitempty"`
	NetworkInterface5 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net5,omitempty"`
	NetworkInterface6 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net6,omitempty"`
	NetworkInterface7 *VirtualEnvironmentContainerCustomNetworkInterface `json:"net7,omitempty"`
	OSType            *string                                            `json:"ostype,omitempty"`
	Protection        *types.CustomBool                                  `json:"protection,omitempty"`
	RootFS            *VirtualEnvironmentContainerCustomRootFS           `json:"rootfs,omitempty"`
	StartOnBoot       *types.CustomBool                                  `json:"onboot,omitempty"`
	StartupBehavior   *VirtualEnvironmentContainerCustomStartupBehavior  `json:"startup,omitempty"`
	Swap              *int                                               `json:"swap,omitempty"`
	Tags              *string                                            `json:"tags,omitempty"`
	Template          *types.CustomBool                                  `json:"template,omitempty"`
	TTY               *int                                               `json:"tty,omitempty"`
	Unprivileged      *types.CustomBool                                  `json:"unprivileged,omitempty"`
}

VirtualEnvironmentContainerGetResponseData contains the data from an user get response.

type VirtualEnvironmentContainerGetStatusResponseBody

type VirtualEnvironmentContainerGetStatusResponseBody struct {
	Data *VirtualEnvironmentContainerGetStatusResponseData `json:"data,omitempty"`
}

VirtualEnvironmentContainerGetStatusResponseBody contains the body from a container get status response.

type VirtualEnvironmentContainerGetStatusResponseData

type VirtualEnvironmentContainerGetStatusResponseData struct {
	CPUCount         *float64     `json:"cpus,omitempty"`
	Lock             *string      `json:"lock,omitempty"`
	MemoryAllocation *int         `json:"maxmem,omitempty"`
	Name             *string      `json:"name,omitempty"`
	RootDiskSize     *interface{} `json:"maxdisk,omitempty"`
	Status           string       `json:"status,omitempty"`
	SwapAllocation   *int         `json:"maxswap,omitempty"`
	Tags             *string      `json:"tags,omitempty"`
	Uptime           *int         `json:"uptime,omitempty"`
	VMID             *int         `json:"vmid,omitempty"`
}

VirtualEnvironmentContainerGetStatusResponseData contains the data from a container get status response.

type VirtualEnvironmentContainerRebootRequestBody

type VirtualEnvironmentContainerRebootRequestBody struct {
	Timeout *int `json:"timeout,omitempty" url:"timeout,omitempty"`
}

VirtualEnvironmentContainerRebootRequestBody contains the body for a container reboot request.

type VirtualEnvironmentContainerShutdownRequestBody

type VirtualEnvironmentContainerShutdownRequestBody struct {
	ForceStop *types.CustomBool `json:"forceStop,omitempty" url:"forceStop,omitempty,int"`
	Timeout   *int              `json:"timeout,omitempty"   url:"timeout,omitempty"`
}

VirtualEnvironmentContainerShutdownRequestBody contains the body for a container shutdown request.

type VirtualEnvironmentContainerUpdateRequestBody

type VirtualEnvironmentContainerUpdateRequestBody VirtualEnvironmentContainerCreateRequestBody

VirtualEnvironmentContainerUpdateRequestBody contains the data for an user update request.

type VirtualEnvironmentDNSGetResponseBody

type VirtualEnvironmentDNSGetResponseBody struct {
	Data *VirtualEnvironmentDNSGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentDNSGetResponseBody contains the body from a DNS get response.

type VirtualEnvironmentDNSGetResponseData

type VirtualEnvironmentDNSGetResponseData struct {
	Server1      *string `json:"dns1,omitempty"   url:"dns1,omitempty"`
	Server2      *string `json:"dns2,omitempty"   url:"dns2,omitempty"`
	Server3      *string `json:"dns3,omitempty"   url:"dns3,omitempty"`
	SearchDomain *string `json:"search,omitempty" url:"search,omitempty"`
}

VirtualEnvironmentDNSGetResponseData contains the data from a DNS get response.

type VirtualEnvironmentDNSUpdateRequestBody

type VirtualEnvironmentDNSUpdateRequestBody struct {
	Server1      *string `json:"dns1,omitempty"   url:"dns1,omitempty"`
	Server2      *string `json:"dns2,omitempty"   url:"dns2,omitempty"`
	Server3      *string `json:"dns3,omitempty"   url:"dns3,omitempty"`
	SearchDomain *string `json:"search,omitempty" url:"search,omitempty"`
}

VirtualEnvironmentDNSUpdateRequestBody contains the body for a DNS update request.

type VirtualEnvironmentDatastoreFileListResponseBody

type VirtualEnvironmentDatastoreFileListResponseBody struct {
	Data []*VirtualEnvironmentDatastoreFileListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentDatastoreFileListResponseBody contains the body from a datastore content list response.

type VirtualEnvironmentDatastoreFileListResponseData

type VirtualEnvironmentDatastoreFileListResponseData struct {
	ContentType    string  `json:"content"`
	FileFormat     string  `json:"format"`
	FileSize       int     `json:"size"`
	ParentVolumeID *string `json:"parent,omitempty"`
	SpaceUsed      *int    `json:"used,omitempty"`
	VMID           *int    `json:"vmid,omitempty"`
	VolumeID       string  `json:"volid"`
}

VirtualEnvironmentDatastoreFileListResponseData contains the data from a datastore content list response.

type VirtualEnvironmentDatastoreGetStatusResponseBody added in v0.8.0

type VirtualEnvironmentDatastoreGetStatusResponseBody struct {
	Data *VirtualEnvironmentDatastoreGetStatusResponseData `json:"data,omitempty"`
}

VirtualEnvironmentDatastoreGetStatusResponseBody contains the body from a datastore status get request.

type VirtualEnvironmentDatastoreGetStatusResponseData added in v0.8.0

type VirtualEnvironmentDatastoreGetStatusResponseData struct {
	Active         *types.CustomBool               `json:"active,omitempty"`
	AvailableBytes *int64                          `json:"avail,omitempty"`
	Content        *types.CustomCommaSeparatedList `json:"content,omitempty" url:"content,omitempty,comma"`
	Enabled        *types.CustomBool               `json:"enabled,omitempty"`
	Shared         *types.CustomBool               `json:"shared,omitempty"`
	TotalBytes     *int64                          `json:"total,omitempty"`
	Type           *string                         `json:"type,omitempty"`
	UsedBytes      *int64                          `json:"used,omitempty"`
}

VirtualEnvironmentDatastoreGetStatusResponseBody contains the data from a datastore status get request.

type VirtualEnvironmentDatastoreListRequestBody

type VirtualEnvironmentDatastoreListRequestBody struct {
	ContentTypes types.CustomCommaSeparatedList `json:"content,omitempty" url:"content,omitempty,comma"`
	Enabled      *types.CustomBool              `json:"enabled,omitempty" url:"enabled,omitempty,int"`
	Format       *types.CustomBool              `json:"format,omitempty"  url:"format,omitempty,int"`
	ID           *string                        `json:"storage,omitempty" url:"storage,omitempty"`
	Target       *string                        `json:"target,omitempty"  url:"target,omitempty"`
}

VirtualEnvironmentDatastoreListRequestBody contains the body for a datastore list request.

type VirtualEnvironmentDatastoreListResponseBody

type VirtualEnvironmentDatastoreListResponseBody struct {
	Data []*VirtualEnvironmentDatastoreListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentDatastoreListResponseBody contains the body from a datastore list response.

type VirtualEnvironmentDatastoreListResponseData

type VirtualEnvironmentDatastoreListResponseData struct {
	Active              *types.CustomBool               `json:"active,omitempty"`
	ContentTypes        *types.CustomCommaSeparatedList `json:"content,omitempty"`
	Enabled             *types.CustomBool               `json:"enabled,omitempty"`
	ID                  string                          `json:"storage,omitempty"`
	Shared              *types.CustomBool               `json:"shared,omitempty"`
	SpaceAvailable      *int                            `json:"avail,omitempty"`
	SpaceTotal          *int                            `json:"total,omitempty"`
	SpaceUsed           *int                            `json:"used,omitempty"`
	SpaceUsedPercentage *float64                        `json:"used_fraction,omitempty"`
	Type                string                          `json:"type,omitempty"`
}

VirtualEnvironmentDatastoreListResponseData contains the data from a datastore list response.

type VirtualEnvironmentDatastoreUploadRequestBody

type VirtualEnvironmentDatastoreUploadRequestBody struct {
	ContentType string    `json:"content,omitempty"`
	DatastoreID string    `json:"storage,omitempty"`
	FileName    string    `json:"filename,omitempty"`
	FileReader  io.Reader `json:"-"`
	NodeName    string    `json:"node,omitempty"`
}

VirtualEnvironmentDatastoreUploadRequestBody contains the body for a datastore upload request.

type VirtualEnvironmentDatastoreUploadResponseBody

type VirtualEnvironmentDatastoreUploadResponseBody struct {
	UploadID *string `json:"data,omitempty"`
}

VirtualEnvironmentDatastoreUploadResponseBody contains the body from a datastore upload response.

type VirtualEnvironmentErrorResponseBody

type VirtualEnvironmentErrorResponseBody struct {
	Data   *string
	Errors *map[string]string
}

VirtualEnvironmentErrorResponseBody contains the body of an error response.

type VirtualEnvironmentGroupCreateRequestBody

type VirtualEnvironmentGroupCreateRequestBody struct {
	Comment *string `json:"comment,omitempty" url:"comment,omitempty"`
	ID      string  `json:"groupid"           url:"groupid"`
}

VirtualEnvironmentGroupCreateRequestBody contains the data for an access group create request.

type VirtualEnvironmentGroupGetResponseBody

type VirtualEnvironmentGroupGetResponseBody struct {
	Data *VirtualEnvironmentGroupGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentGroupGetResponseBody contains the body from an access group get response.

type VirtualEnvironmentGroupGetResponseData

type VirtualEnvironmentGroupGetResponseData struct {
	Comment *string  `json:"comment,omitempty"`
	Members []string `json:"members"`
}

VirtualEnvironmentGroupGetResponseData contains the data from an access group get response.

type VirtualEnvironmentGroupListResponseBody

type VirtualEnvironmentGroupListResponseBody struct {
	Data []*VirtualEnvironmentGroupListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentGroupListResponseBody contains the body from an access group list response.

type VirtualEnvironmentGroupListResponseData

type VirtualEnvironmentGroupListResponseData struct {
	Comment *string `json:"comment,omitempty"`
	ID      string  `json:"groupid"`
}

VirtualEnvironmentGroupListResponseData contains the data from an access group list response.

type VirtualEnvironmentGroupUpdateRequestBody

type VirtualEnvironmentGroupUpdateRequestBody struct {
	Comment *string `json:"comment,omitempty" url:"comment,omitempty"`
}

VirtualEnvironmentGroupUpdateRequestBody contains the data for an access group update request.

type VirtualEnvironmentHostsGetResponseBody

type VirtualEnvironmentHostsGetResponseBody struct {
	Data *VirtualEnvironmentHostsGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentHostsGetResponseBody contains the body from a hosts get response.

type VirtualEnvironmentHostsGetResponseData

type VirtualEnvironmentHostsGetResponseData struct {
	Data   string  `json:"data"`
	Digest *string `json:"digest,omitempty"`
}

VirtualEnvironmentHostsGetResponseData contains the data from a hosts get response.

type VirtualEnvironmentHostsUpdateRequestBody

type VirtualEnvironmentHostsUpdateRequestBody struct {
	Data   string  `json:"data"             url:"data"`
	Digest *string `json:"digest,omitempty" url:"digest,omitempty"`
}

VirtualEnvironmentHostsUpdateRequestBody contains the body for a hosts update request.

type VirtualEnvironmentMultiPartData

type VirtualEnvironmentMultiPartData struct {
	Boundary string
	Reader   io.Reader
	Size     *int64
}

VirtualEnvironmentMultiPartData enables multipart uploads in DoRequest.

type VirtualEnvironmentNodeExecuteRequestBody

type VirtualEnvironmentNodeExecuteRequestBody struct {
	Commands CustomNodeCommands `json:"commands" url:"commands"`
}

VirtualEnvironmentNodeExecuteRequestBody contains the data for a node execute request.

type VirtualEnvironmentNodeGetTaskStatusResponseBody

type VirtualEnvironmentNodeGetTaskStatusResponseBody struct {
	Data *VirtualEnvironmentNodeGetTaskStatusResponseData `json:"data,omitempty"`
}

VirtualEnvironmentNodeGetTaskStatusResponseBody contains the body from a node get task status response.

type VirtualEnvironmentNodeGetTaskStatusResponseData

type VirtualEnvironmentNodeGetTaskStatusResponseData struct {
	PID      int    `json:"pid,omitempty"`
	Status   string `json:"status,omitempty"`
	ExitCode string `json:"exitstatus,omitempty"`
}

VirtualEnvironmentNodeGetTaskStatusResponseData contains the data from a node get task status response.

type VirtualEnvironmentNodeGetTimeResponseBody

type VirtualEnvironmentNodeGetTimeResponseBody struct {
	Data *VirtualEnvironmentNodeGetTimeResponseData `json:"data,omitempty"`
}

VirtualEnvironmentNodeGetTimeResponseBody contains the body from a node time zone get response.

type VirtualEnvironmentNodeGetTimeResponseData

type VirtualEnvironmentNodeGetTimeResponseData struct {
	LocalTime types.CustomTimestamp `json:"localtime"`
	TimeZone  string                `json:"timezone"`
	UTCTime   types.CustomTimestamp `json:"time"`
}

VirtualEnvironmentNodeGetTimeResponseData contains the data from a node list response.

type VirtualEnvironmentNodeListResponseBody

type VirtualEnvironmentNodeListResponseBody struct {
	Data []*VirtualEnvironmentNodeListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentNodeListResponseBody contains the body from a node list response.

type VirtualEnvironmentNodeListResponseData

type VirtualEnvironmentNodeListResponseData struct {
	CPUCount        *int     `json:"maxcpu,omitempty"`
	CPUUtilization  *float64 `json:"cpu,omitempty"`
	MemoryAvailable *int     `json:"maxmem,omitempty"`
	MemoryUsed      *int     `json:"mem,omitempty"`
	Name            string   `json:"node"`
	SSLFingerprint  *string  `json:"ssl_fingerprint,omitempty"`
	Status          *string  `json:"status"`
	SupportLevel    *string  `json:"level,omitempty"`
	Uptime          *int     `json:"uptime"`
}

VirtualEnvironmentNodeListResponseData contains the data from a node list response.

type VirtualEnvironmentNodeNetworkDeviceListResponseBody

type VirtualEnvironmentNodeNetworkDeviceListResponseBody struct {
	Data []*VirtualEnvironmentNodeNetworkDeviceListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentNodeNetworkDeviceListResponseBody contains the body from a node network device list response.

type VirtualEnvironmentNodeNetworkDeviceListResponseData

type VirtualEnvironmentNodeNetworkDeviceListResponseData struct {
	Active      *types.CustomBool `json:"active,omitempty"`
	Address     *string           `json:"address,omitempty"`
	Autostart   *types.CustomBool `json:"autostart,omitempty"`
	BridgeFD    *string           `json:"bridge_fd,omitempty"`
	BridgePorts *string           `json:"bridge_ports,omitempty"`
	BridgeSTP   *string           `json:"bridge_stp,omitempty"`
	CIDR        *string           `json:"cidr,omitempty"`
	Exists      *types.CustomBool `json:"exists,omitempty"`
	Families    *[]string         `json:"families,omitempty"`
	Gateway     *string           `json:"gateway,omitempty"`
	Iface       string            `json:"iface"`
	MethodIPv4  *string           `json:"method,omitempty"`
	MethodIPv6  *string           `json:"method6,omitempty"`
	Netmask     *string           `json:"netmask,omitempty"`
	Priority    int               `json:"priority"`
	Type        string            `json:"type"`
}

VirtualEnvironmentNodeNetworkDeviceListResponseData contains the data from a node network device list response.

type VirtualEnvironmentNodeUpdateTimeRequestBody

type VirtualEnvironmentNodeUpdateTimeRequestBody struct {
	TimeZone string `json:"timezone" url:"timezone"`
}

VirtualEnvironmentNodeUpdateTimeRequestBody contains the body for a node time update request.

type VirtualEnvironmentPoolCreateRequestBody

type VirtualEnvironmentPoolCreateRequestBody struct {
	Comment *string `json:"comment,omitempty" url:"comment,omitempty"`
	ID      string  `json:"groupid"           url:"poolid"`
}

VirtualEnvironmentPoolCreateRequestBody contains the data for an pool create request.

type VirtualEnvironmentPoolGetResponseBody

type VirtualEnvironmentPoolGetResponseBody struct {
	Data *VirtualEnvironmentPoolGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentPoolGetResponseBody contains the body from an pool get response.

type VirtualEnvironmentPoolGetResponseData

type VirtualEnvironmentPoolGetResponseData struct {
	Comment *string                                    `json:"comment,omitempty"`
	Members []VirtualEnvironmentPoolGetResponseMembers `json:"members,omitempty"`
}

VirtualEnvironmentPoolGetResponseData contains the data from an pool get response.

type VirtualEnvironmentPoolGetResponseMembers

type VirtualEnvironmentPoolGetResponseMembers struct {
	ID          string  `json:"id"`
	Node        string  `json:"node"`
	DatastoreID *string `json:"storage,omitempty"`
	Type        string  `json:"type"`
	VMID        *int    `json:"vmid"`
}

VirtualEnvironmentPoolGetResponseMembers contains the members data from an pool get response.

type VirtualEnvironmentPoolListResponseBody

type VirtualEnvironmentPoolListResponseBody struct {
	Data []*VirtualEnvironmentPoolListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentPoolListResponseBody contains the body from an pool list response.

type VirtualEnvironmentPoolListResponseData

type VirtualEnvironmentPoolListResponseData struct {
	Comment *string `json:"comment,omitempty"`
	ID      string  `json:"poolid"`
}

VirtualEnvironmentPoolListResponseData contains the data from an pool list response.

type VirtualEnvironmentPoolUpdateRequestBody

type VirtualEnvironmentPoolUpdateRequestBody struct {
	Comment *string `json:"comment,omitempty" url:"comment,omitempty"`
}

VirtualEnvironmentPoolUpdateRequestBody contains the data for an pool update request.

type VirtualEnvironmentRoleCreateRequestBody

type VirtualEnvironmentRoleCreateRequestBody struct {
	ID         string                 `json:"roleid" url:"roleid"`
	Privileges types.CustomPrivileges `json:"privs"  url:"privs,comma"`
}

VirtualEnvironmentRoleCreateRequestBody contains the data for an access group create request.

type VirtualEnvironmentRoleGetResponseBody

type VirtualEnvironmentRoleGetResponseBody struct {
	Data *types.CustomPrivileges `json:"data,omitempty"`
}

VirtualEnvironmentRoleGetResponseBody contains the body from an access group get response.

type VirtualEnvironmentRoleListResponseBody

type VirtualEnvironmentRoleListResponseBody struct {
	Data []*VirtualEnvironmentRoleListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentRoleListResponseBody contains the body from an access group list response.

type VirtualEnvironmentRoleListResponseData

type VirtualEnvironmentRoleListResponseData struct {
	ID         string                  `json:"roleid"`
	Privileges *types.CustomPrivileges `json:"privs,omitempty"`
	Special    *types.CustomBool       `json:"special,omitempty"`
}

VirtualEnvironmentRoleListResponseData contains the data from an access group list response.

type VirtualEnvironmentRoleUpdateRequestBody

type VirtualEnvironmentRoleUpdateRequestBody struct {
	Privileges types.CustomPrivileges `json:"privs" url:"privs,comma"`
}

VirtualEnvironmentRoleUpdateRequestBody contains the data for an access group update request.

type VirtualEnvironmentUserChangePasswordRequestBody

type VirtualEnvironmentUserChangePasswordRequestBody struct {
	ID       string `json:"userid"   url:"userid"`
	Password string `json:"password" url:"password"`
}

VirtualEnvironmentUserChangePasswordRequestBody contains the data for a user password change request.

type VirtualEnvironmentUserCreateRequestBody

type VirtualEnvironmentUserCreateRequestBody struct {
	Comment        *string                `json:"comment,omitempty"   url:"comment,omitempty"`
	Email          *string                `json:"email,omitempty"     url:"email,omitempty"`
	Enabled        *types.CustomBool      `json:"enable,omitempty"    url:"enable,omitempty,int"`
	ExpirationDate *types.CustomTimestamp `json:"expire,omitempty"    url:"expire,omitempty,unix"`
	FirstName      *string                `json:"firstname,omitempty" url:"firstname,omitempty"`
	Groups         []string               `json:"groups,omitempty"    url:"groups,omitempty,comma"`
	ID             string                 `json:"userid"              url:"userid"`
	Keys           *string                `json:"keys,omitempty"      url:"keys,omitempty"`
	LastName       *string                `json:"lastname,omitempty"  url:"lastname,omitempty"`
	Password       string                 `json:"password"            url:"password"`
}

VirtualEnvironmentUserCreateRequestBody contains the data for an user create request.

type VirtualEnvironmentUserGetResponseBody

type VirtualEnvironmentUserGetResponseBody struct {
	Data *VirtualEnvironmentUserGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentUserGetResponseBody contains the body from an user get response.

type VirtualEnvironmentUserGetResponseData

type VirtualEnvironmentUserGetResponseData struct {
	Comment        *string                `json:"comment,omitempty"`
	Email          *string                `json:"email,omitempty"`
	Enabled        *types.CustomBool      `json:"enable,omitempty"`
	ExpirationDate *types.CustomTimestamp `json:"expire,omitempty"`
	FirstName      *string                `json:"firstname,omitempty"`
	Groups         *[]string              `json:"groups,omitempty"`
	Keys           *string                `json:"keys,omitempty"`
	LastName       *string                `json:"lastname,omitempty"`
}

VirtualEnvironmentUserGetResponseData contains the data from an user get response.

type VirtualEnvironmentUserListResponseBody

type VirtualEnvironmentUserListResponseBody struct {
	Data []*VirtualEnvironmentUserListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentUserListResponseBody contains the body from an user list response.

type VirtualEnvironmentUserListResponseData

type VirtualEnvironmentUserListResponseData struct {
	Comment        *string                `json:"comment,omitempty"`
	Email          *string                `json:"email,omitempty"`
	Enabled        *types.CustomBool      `json:"enable,omitempty"`
	ExpirationDate *types.CustomTimestamp `json:"expire,omitempty"`
	FirstName      *string                `json:"firstname,omitempty"`
	Groups         *[]string              `json:"groups,omitempty"`
	ID             string                 `json:"userid"`
	Keys           *string                `json:"keys,omitempty"`
	LastName       *string                `json:"lastname,omitempty"`
}

VirtualEnvironmentUserListResponseData contains the data from an user list response.

type VirtualEnvironmentUserUpdateRequestBody

type VirtualEnvironmentUserUpdateRequestBody struct {
	Append         *types.CustomBool      `json:"append,omitempty"    url:"append,omitempty"`
	Comment        *string                `json:"comment,omitempty"   url:"comment,omitempty"`
	Email          *string                `json:"email,omitempty"     url:"email,omitempty"`
	Enabled        *types.CustomBool      `json:"enable,omitempty"    url:"enable,omitempty,int"`
	ExpirationDate *types.CustomTimestamp `json:"expire,omitempty"    url:"expire,omitempty,unix"`
	FirstName      *string                `json:"firstname,omitempty" url:"firstname,omitempty"`
	Groups         []string               `json:"groups,omitempty"    url:"groups,omitempty,comma"`
	Keys           *string                `json:"keys,omitempty"      url:"keys,omitempty"`
	LastName       *string                `json:"lastname,omitempty"  url:"lastname,omitempty"`
}

VirtualEnvironmentUserUpdateRequestBody contains the data for an user update request.

type VirtualEnvironmentVMCloneRequestBody

type VirtualEnvironmentVMCloneRequestBody struct {
	BandwidthLimit      *int              `json:"bwlimit,omitempty"     url:"bwlimit,omitempty"`
	Description         *string           `json:"description,omitempty" url:"description,omitempty"`
	FullCopy            *types.CustomBool `json:"full,omitempty"        url:"full,omitempty,int"`
	Name                *string           `json:"name,omitempty"        url:"name,omitempty"`
	PoolID              *string           `json:"pool,omitempty"        url:"pool,omitempty"`
	SnapshotName        *string           `json:"snapname,omitempty"    url:"snapname,omitempty"`
	TargetNodeName      *string           `json:"target,omitempty"      url:"target,omitempty"`
	TargetStorage       *string           `json:"storage,omitempty"     url:"storage,omitempty"`
	TargetStorageFormat *string           `json:"format,omitempty"      url:"format,omitempty"`
	VMIDNew             int               `json:"newid"                 url:"newid"`
}

VirtualEnvironmentVMCloneRequestBody contains the data for an virtual machine clone request.

type VirtualEnvironmentVMCreateRequestBody

type VirtualEnvironmentVMCreateRequestBody struct {
	ACPI                 *types.CustomBool              `json:"acpi,omitempty"               url:"acpi,omitempty,int"`
	Agent                *CustomAgent                   `json:"agent,omitempty"              url:"agent,omitempty"`
	AllowReboot          *types.CustomBool              `json:"reboot,omitempty"             url:"reboot,omitempty,int"`
	AudioDevices         CustomAudioDevices             `json:"audio,omitempty"              url:"audio,omitempty"`
	Autostart            *types.CustomBool              `json:"autostart,omitempty"          url:"autostart,omitempty,int"`
	BackupFile           *string                        `json:"archive,omitempty"            url:"archive,omitempty"`
	BandwidthLimit       *int                           `json:"bwlimit,omitempty"            url:"bwlimit,omitempty"`
	BIOS                 *string                        `json:"bios,omitempty"               url:"bios,omitempty"`
	BootDisk             *string                        `json:"bootdisk,omitempty"           url:"bootdisk,omitempty"`
	BootOrder            *string                        `json:"boot,omitempty"               url:"boot,omitempty"`
	CDROM                *string                        `json:"cdrom,omitempty"              url:"cdrom,omitempty"`
	CloudInitConfig      *CustomCloudInitConfig         `json:"cloudinit,omitempty"          url:"cloudinit,omitempty"`
	CPUArchitecture      *string                        `json:"arch,omitempty"               url:"arch,omitempty"`
	CPUCores             *int                           `json:"cores,omitempty"              url:"cores,omitempty"`
	CPUEmulation         *CustomCPUEmulation            `json:"cpu,omitempty"                url:"cpu,omitempty"`
	CPULimit             *int                           `json:"cpulimit,omitempty"           url:"cpulimit,omitempty"`
	CPUSockets           *int                           `json:"sockets,omitempty"            url:"sockets,omitempty"`
	CPUUnits             *int                           `json:"cpuunits,omitempty"           url:"cpuunits,omitempty"`
	DedicatedMemory      *int                           `json:"memory,omitempty"             url:"memory,omitempty"`
	Delete               []string                       `json:"delete,omitempty"             url:"delete,omitempty,comma"`
	DeletionProtection   *types.CustomBool              `json:"protection,omitempty"         url:"force,omitempty,int"`
	Description          *string                        `json:"description,omitempty"        url:"description,omitempty"`
	EFIDisk              *CustomEFIDisk                 `json:"efidisk0,omitempty"           url:"efidisk0,omitempty"`
	FloatingMemory       *int                           `json:"balloon,omitempty"            url:"balloon,omitempty"`
	FloatingMemoryShares *int                           `json:"shares,omitempty"             url:"shares,omitempty"`
	Freeze               *types.CustomBool              `json:"freeze,omitempty"             url:"freeze,omitempty,int"`
	HookScript           *string                        `json:"hookscript,omitempty"         url:"hookscript,omitempty"`
	Hotplug              types.CustomCommaSeparatedList `json:"hotplug,omitempty"            url:"hotplug,omitempty,comma"`
	Hugepages            *string                        `json:"hugepages,omitempty"          url:"hugepages,omitempty"`
	IDEDevices           CustomStorageDevices           `json:"ide,omitempty"                url:",omitempty"`
	KeyboardLayout       *string                        `json:"keyboard,omitempty"           url:"keyboard,omitempty"`
	KVMArguments         *string                        `json:"args,omitempty"               url:"args,omitempty,space"`
	KVMEnabled           *types.CustomBool              `json:"kvm,omitempty"                url:"kvm,omitempty,int"`
	LocalTime            *types.CustomBool              `json:"localtime,omitempty"          url:"localtime,omitempty,int"`
	Lock                 *string                        `json:"lock,omitempty"               url:"lock,omitempty"`
	Machine              *string                        `json:"machine,omitempty"            url:"machine,omitempty"`
	MigrateDowntime      *float64                       `json:"migrate_downtime,omitempty"   url:"migrate_downtime,omitempty"`
	MigrateSpeed         *int                           `json:"migrate_speed,omitempty"      url:"migrate_speed,omitempty"`
	Name                 *string                        `json:"name,omitempty"               url:"name,omitempty"`
	NetworkDevices       CustomNetworkDevices           `json:"net,omitempty"                url:"net,omitempty"`
	NUMADevices          CustomNUMADevices              `json:"numa_devices,omitempty"       url:"numa,omitempty"`
	NUMAEnabled          *types.CustomBool              `json:"numa,omitempty"               url:"numa,omitempty,int"`
	OSType               *string                        `json:"ostype,omitempty"             url:"ostype,omitempty"`
	Overwrite            *types.CustomBool              `json:"force,omitempty"              url:"force,omitempty,int"`
	PCIDevices           CustomPCIDevices               `json:"hostpci,omitempty"            url:"hostpci,omitempty"`
	PoolID               *string                        `json:"pool,omitempty"               url:"pool,omitempty"`
	Revert               *string                        `json:"revert,omitempty"             url:"revert,omitempty"`
	SATADevices          CustomStorageDevices           `json:"sata,omitempty"               url:"sata,omitempty"`
	SCSIDevices          CustomStorageDevices           `json:"scsi,omitempty"               url:"scsi,omitempty"`
	SCSIHardware         *string                        `json:"scsihw,omitempty"             url:"scsihw,omitempty"`
	SerialDevices        CustomSerialDevices            `json:"serial,omitempty"             url:"serial,omitempty"`
	SharedMemory         *CustomSharedMemory            `json:"ivshmem,omitempty"            url:"ivshmem,omitempty"`
	SkipLock             *types.CustomBool              `json:"skiplock,omitempty"           url:"skiplock,omitempty,int"`
	SMBIOS               *CustomSMBIOS                  `json:"smbios1,omitempty"            url:"smbios1,omitempty"`
	SpiceEnhancements    *CustomSpiceEnhancements       `json:"spice_enhancements,omitempty" url:"spice_enhancements,omitempty"`
	StartDate            *string                        `json:"startdate,omitempty"          url:"startdate,omitempty"`
	StartOnBoot          *types.CustomBool              `json:"onboot,omitempty"             url:"onboot,omitempty,int"`
	StartupOrder         *CustomStartupOrder            `json:"startup,omitempty"            url:"startup,omitempty"`
	TabletDeviceEnabled  *types.CustomBool              `json:"tablet,omitempty"             url:"tablet,omitempty,int"`
	Tags                 *string                        `json:"tags,omitempty"               url:"tags,omitempty"`
	Template             *types.CustomBool              `json:"template,omitempty"           url:"template,omitempty,int"`
	TimeDriftFixEnabled  *types.CustomBool              `json:"tdf,omitempty"                url:"tdf,omitempty,int"`
	USBDevices           CustomUSBDevices               `json:"usb,omitempty"                url:"usb,omitempty"`
	VGADevice            *CustomVGADevice               `json:"vga,omitempty"                url:"vga,omitempty"`
	VirtualCPUCount      *int                           `json:"vcpus,omitempty"              url:"vcpus,omitempty"`
	VirtualIODevices     CustomStorageDevices           `json:"virtio,omitempty"             url:"virtio,omitempty"`
	VMGenerationID       *string                        `json:"vmgenid,omitempty"            url:"vmgenid,omitempty"`
	VMID                 *int                           `json:"vmid,omitempty"               url:"vmid,omitempty"`
	VMStateDatastoreID   *string                        `json:"vmstatestorage,omitempty"     url:"vmstatestorage,omitempty"`
	WatchdogDevice       *CustomWatchdogDevice          `json:"watchdog,omitempty"           url:"watchdog,omitempty"`
}

VirtualEnvironmentVMCreateRequestBody contains the data for a virtual machine create request.

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseBody

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseBody struct {
	Data *VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData `json:"data,omitempty"`
}

VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseBody contains the body from a QEMU get network interfaces response.

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData struct {
	Result *[]VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResult `json:"result,omitempty"`
}

VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseData contains the data from a QEMU get network interfaces response.

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResult

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResult struct {
	MACAddress  string                                                                 `json:"hardware-address"`
	Name        string                                                                 `json:"name"`
	Statistics  *VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultStatistics  `json:"statistics,omitempty"`
	IPAddresses *[]VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultIPAddress `json:"ip-addresses,omitempty"`
}

VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResult contains the result from a QEMU get network interfaces response.

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultIPAddress

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultIPAddress struct {
	Address string `json:"ip-address"`
	Prefix  int    `json:"prefix"`
	Type    string `json:"ip-address-type"`
}

VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultIPAddress contains the IP address from a QEMU get network interfaces response.

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultStatistics

type VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultStatistics struct {
	RXBytes   int `json:"rx-bytes"`
	RXDropped int `json:"rx-dropped"`
	RXErrors  int `json:"rx-errs"`
	RXPackets int `json:"rx-packets"`
	TXBytes   int `json:"tx-bytes"`
	TXDropped int `json:"tx-dropped"`
	TXErrors  int `json:"tx-errs"`
	TXPackets int `json:"tx-packets"`
}

VirtualEnvironmentVMGetQEMUNetworkInterfacesResponseResultStatistics contains the statistics from a QEMU get network interfaces response.

type VirtualEnvironmentVMGetResponseBody

type VirtualEnvironmentVMGetResponseBody struct {
	Data *VirtualEnvironmentVMGetResponseData `json:"data,omitempty"`
}

VirtualEnvironmentVMGetResponseBody contains the body from a virtual machine get response.

type VirtualEnvironmentVMGetResponseData

type VirtualEnvironmentVMGetResponseData struct {
	ACPI                 *types.CustomBool               `json:"acpi,omitempty"`
	Agent                *CustomAgent                    `json:"agent,omitempty"`
	AllowReboot          *types.CustomBool               `json:"reboot,omitempty"`
	AudioDevice          *CustomAudioDevice              `json:"audio0,omitempty"`
	Autostart            *types.CustomBool               `json:"autostart,omitempty"`
	BackupFile           *string                         `json:"archive,omitempty"`
	BandwidthLimit       *int                            `json:"bwlimit,omitempty"`
	BIOS                 *string                         `json:"bios,omitempty"`
	BootDisk             *string                         `json:"bootdisk,omitempty"`
	BootOrder            *string                         `json:"boot,omitempty"`
	CDROM                *string                         `json:"cdrom,omitempty"`
	CloudInitDNSDomain   *string                         `json:"searchdomain,omitempty"`
	CloudInitDNSServer   *string                         `json:"nameserver,omitempty"`
	CloudInitFiles       *CustomCloudInitFiles           `json:"cicustom,omitempty"`
	CloudInitPassword    *string                         `json:"cipassword,omitempty"`
	CloudInitSSHKeys     *CustomCloudInitSSHKeys         `json:"sshkeys,omitempty"`
	CloudInitType        *string                         `json:"citype,omitempty"`
	CloudInitUsername    *string                         `json:"ciuser,omitempty"`
	CPUArchitecture      *string                         `json:"arch,omitempty"`
	CPUCores             *int                            `json:"cores,omitempty"`
	CPUEmulation         *CustomCPUEmulation             `json:"cpu,omitempty"`
	CPULimit             *int                            `json:"cpulimit,omitempty"`
	CPUSockets           *int                            `json:"sockets,omitempty"`
	CPUUnits             *int                            `json:"cpuunits,omitempty"`
	DedicatedMemory      *int                            `json:"memory,omitempty"`
	DeletionProtection   *types.CustomBool               `json:"protection,omitempty"`
	Description          *string                         `json:"description,omitempty"`
	EFIDisk              *CustomEFIDisk                  `json:"efidisk0,omitempty"`
	FloatingMemory       *int                            `json:"balloon,omitempty"`
	FloatingMemoryShares *int                            `json:"shares,omitempty"`
	Freeze               *types.CustomBool               `json:"freeze,omitempty"`
	HookScript           *string                         `json:"hookscript,omitempty"`
	Hotplug              *types.CustomCommaSeparatedList `json:"hotplug,omitempty"`
	Hugepages            *string                         `json:"hugepages,omitempty"`
	IDEDevice0           *CustomStorageDevice            `json:"ide0,omitempty"`
	IDEDevice1           *CustomStorageDevice            `json:"ide1,omitempty"`
	IDEDevice2           *CustomStorageDevice            `json:"ide2,omitempty"`
	IDEDevice3           *CustomStorageDevice            `json:"ide3,omitempty"`
	IPConfig0            *CustomCloudInitIPConfig        `json:"ipconfig0,omitempty"`
	IPConfig1            *CustomCloudInitIPConfig        `json:"ipconfig1,omitempty"`
	IPConfig2            *CustomCloudInitIPConfig        `json:"ipconfig2,omitempty"`
	IPConfig3            *CustomCloudInitIPConfig        `json:"ipconfig3,omitempty"`
	IPConfig4            *CustomCloudInitIPConfig        `json:"ipconfig4,omitempty"`
	IPConfig5            *CustomCloudInitIPConfig        `json:"ipconfig5,omitempty"`
	IPConfig6            *CustomCloudInitIPConfig        `json:"ipconfig6,omitempty"`
	IPConfig7            *CustomCloudInitIPConfig        `json:"ipconfig7,omitempty"`
	KeyboardLayout       *string                         `json:"keyboard,omitempty"`
	KVMArguments         *string                         `json:"args,omitempty"`
	KVMEnabled           *types.CustomBool               `json:"kvm,omitempty"`
	LocalTime            *types.CustomBool               `json:"localtime,omitempty"`
	Lock                 *string                         `json:"lock,omitempty"`
	Machine              *string                         `json:"machine,omitempty"`
	MigrateDowntime      *float64                        `json:"migrate_downtime,omitempty"`
	MigrateSpeed         *int                            `json:"migrate_speed,omitempty"`
	Name                 *string                         `json:"name,omitempty"`
	NetworkDevice0       *CustomNetworkDevice            `json:"net0,omitempty"`
	NetworkDevice1       *CustomNetworkDevice            `json:"net1,omitempty"`
	NetworkDevice2       *CustomNetworkDevice            `json:"net2,omitempty"`
	NetworkDevice3       *CustomNetworkDevice            `json:"net3,omitempty"`
	NetworkDevice4       *CustomNetworkDevice            `json:"net4,omitempty"`
	NetworkDevice5       *CustomNetworkDevice            `json:"net5,omitempty"`
	NetworkDevice6       *CustomNetworkDevice            `json:"net6,omitempty"`
	NetworkDevice7       *CustomNetworkDevice            `json:"net7,omitempty"`
	NUMADevices          *CustomNUMADevices              `json:"numa_devices,omitempty"`
	NUMAEnabled          *types.CustomBool               `json:"numa,omitempty"`
	OSType               *string                         `json:"ostype,omitempty"`
	Overwrite            *types.CustomBool               `json:"force,omitempty"`
	PCIDevice0           *CustomPCIDevice                `json:"hostpci0,omitempty"`
	PCIDevice1           *CustomPCIDevice                `json:"hostpci1,omitempty"`
	PCIDevice2           *CustomPCIDevice                `json:"hostpci2,omitempty"`
	PCIDevice3           *CustomPCIDevice                `json:"hostpci3,omitempty"`
	PoolID               *string                         `json:"pool,omitempty"               url:"pool,omitempty"`
	Revert               *string                         `json:"revert,omitempty"`
	SATADevice0          *CustomStorageDevice            `json:"sata0,omitempty"`
	SATADevice1          *CustomStorageDevice            `json:"sata1,omitempty"`
	SATADevice2          *CustomStorageDevice            `json:"sata2,omitempty"`
	SATADevice3          *CustomStorageDevice            `json:"sata3,omitempty"`
	SATADevice4          *CustomStorageDevice            `json:"sata4,omitempty"`
	SATADevice5          *CustomStorageDevice            `json:"sata5,omitempty"`
	SCSIDevice0          *CustomStorageDevice            `json:"scsi0,omitempty"`
	SCSIDevice1          *CustomStorageDevice            `json:"scsi1,omitempty"`
	SCSIDevice2          *CustomStorageDevice            `json:"scsi2,omitempty"`
	SCSIDevice3          *CustomStorageDevice            `json:"scsi3,omitempty"`
	SCSIDevice4          *CustomStorageDevice            `json:"scsi4,omitempty"`
	SCSIDevice5          *CustomStorageDevice            `json:"scsi5,omitempty"`
	SCSIDevice6          *CustomStorageDevice            `json:"scsi6,omitempty"`
	SCSIDevice7          *CustomStorageDevice            `json:"scsi7,omitempty"`
	SCSIDevice8          *CustomStorageDevice            `json:"scsi8,omitempty"`
	SCSIDevice9          *CustomStorageDevice            `json:"scsi9,omitempty"`
	SCSIDevice10         *CustomStorageDevice            `json:"scsi10,omitempty"`
	SCSIDevice11         *CustomStorageDevice            `json:"scsi11,omitempty"`
	SCSIDevice12         *CustomStorageDevice            `json:"scsi12,omitempty"`
	SCSIDevice13         *CustomStorageDevice            `json:"scsi13,omitempty"`
	SCSIHardware         *string                         `json:"scsihw,omitempty"`
	SerialDevice0        *string                         `json:"serial0,omitempty"`
	SerialDevice1        *string                         `json:"serial1,omitempty"`
	SerialDevice2        *string                         `json:"serial2,omitempty"`
	SerialDevice3        *string                         `json:"serial3,omitempty"`
	SharedMemory         *CustomSharedMemory             `json:"ivshmem,omitempty"`
	SkipLock             *types.CustomBool               `json:"skiplock,omitempty"`
	SMBIOS               *CustomSMBIOS                   `json:"smbios1,omitempty"`
	SpiceEnhancements    *CustomSpiceEnhancements        `json:"spice_enhancements,omitempty"`
	StartDate            *string                         `json:"startdate,omitempty"`
	StartOnBoot          *types.CustomBool               `json:"onboot,omitempty"`
	StartupOrder         *CustomStartupOrder             `json:"startup,omitempty"`
	TabletDeviceEnabled  *types.CustomBool               `json:"tablet,omitempty"`
	Tags                 *string                         `json:"tags,omitempty"`
	Template             *types.CustomBool               `json:"template,omitempty"`
	TimeDriftFixEnabled  *types.CustomBool               `json:"tdf,omitempty"`
	USBDevices           *CustomUSBDevices               `json:"usb,omitempty"`
	VGADevice            *CustomVGADevice                `json:"vga,omitempty"`
	VirtualCPUCount      *int                            `json:"vcpus,omitempty"`
	VirtualIODevice0     *CustomStorageDevice            `json:"virtio0,omitempty"`
	VirtualIODevice1     *CustomStorageDevice            `json:"virtio1,omitempty"`
	VirtualIODevice2     *CustomStorageDevice            `json:"virtio2,omitempty"`
	VirtualIODevice3     *CustomStorageDevice            `json:"virtio3,omitempty"`
	VirtualIODevice4     *CustomStorageDevice            `json:"virtio4,omitempty"`
	VirtualIODevice5     *CustomStorageDevice            `json:"virtio5,omitempty"`
	VirtualIODevice6     *CustomStorageDevice            `json:"virtio6,omitempty"`
	VirtualIODevice7     *CustomStorageDevice            `json:"virtio7,omitempty"`
	VirtualIODevice8     *CustomStorageDevice            `json:"virtio8,omitempty"`
	VirtualIODevice9     *CustomStorageDevice            `json:"virtio9,omitempty"`
	VirtualIODevice10    *CustomStorageDevice            `json:"virtio10,omitempty"`
	VirtualIODevice11    *CustomStorageDevice            `json:"virtio11,omitempty"`
	VirtualIODevice12    *CustomStorageDevice            `json:"virtio12,omitempty"`
	VirtualIODevice13    *CustomStorageDevice            `json:"virtio13,omitempty"`
	VirtualIODevice14    *CustomStorageDevice            `json:"virtio14,omitempty"`
	VirtualIODevice15    *CustomStorageDevice            `json:"virtio15,omitempty"`
	VMGenerationID       *string                         `json:"vmgenid,omitempty"`
	VMStateDatastoreID   *string                         `json:"vmstatestorage,omitempty"`
	WatchdogDevice       *CustomWatchdogDevice           `json:"watchdog,omitempty"`
}

VirtualEnvironmentVMGetResponseData contains the data from an virtual machine get response.

type VirtualEnvironmentVMGetStatusResponseBody

type VirtualEnvironmentVMGetStatusResponseBody struct {
	Data *VirtualEnvironmentVMGetStatusResponseData `json:"data,omitempty"`
}

VirtualEnvironmentVMGetStatusResponseBody contains the body from a VM get status response.

type VirtualEnvironmentVMGetStatusResponseData

type VirtualEnvironmentVMGetStatusResponseData struct {
	AgentEnabled     *types.CustomBool `json:"agent,omitempty"`
	CPUCount         *float64          `json:"cpus,omitempty"`
	Lock             *string           `json:"lock,omitempty"`
	MemoryAllocation *int              `json:"maxmem,omitempty"`
	Name             *string           `json:"name,omitempty"`
	PID              *int              `json:"pid,omitempty"`
	QMPStatus        *string           `json:"qmpstatus,omitempty"`
	RootDiskSize     *int              `json:"maxdisk,omitempty"`
	SpiceSupport     *types.CustomBool `json:"spice,omitempty"`
	Status           string            `json:"status,omitempty"`
	Tags             *string           `json:"tags,omitempty"`
	Uptime           *int              `json:"uptime,omitempty"`
	VMID             *int              `json:"vmid,omitempty"`
}

VirtualEnvironmentVMGetStatusResponseData contains the data from a VM get status response.

type VirtualEnvironmentVMListResponseBody

type VirtualEnvironmentVMListResponseBody struct {
	Data []*VirtualEnvironmentVMListResponseData `json:"data,omitempty"`
}

VirtualEnvironmentVMListResponseBody contains the body from an virtual machine list response.

type VirtualEnvironmentVMListResponseData

type VirtualEnvironmentVMListResponseData struct {
	Name *string `json:"name,omitempty"`
	Tags *string `json:"tags,omitempty"`
	VMID int     `json:"vmid,omitempty"`
}

VirtualEnvironmentVMListResponseData contains the data from an virtual machine list response.

type VirtualEnvironmentVMMigrateRequestBody added in v0.8.0

type VirtualEnvironmentVMMigrateRequestBody struct {
	OnlineMigration *types.CustomBool `json:"online,omitempty"           url:"online,omitempty"`
	TargetNode      string            `json:"target"                     url:"target"`
	TargetStorage   *string           `json:"targetstorage,omitempty"    url:"targetstorage,omitempty"`
	WithLocalDisks  *types.CustomBool `json:"with-local-disks,omitempty" url:"with-local-disks,omitempty,int"`
}

VirtualEnvironmentVMMigrateRequestBody contains the body for a VM migration request.

type VirtualEnvironmentVMMigrateResponseBody added in v0.8.0

type VirtualEnvironmentVMMigrateResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMMigrateResponseBody contains the body from a VM migrate response.

type VirtualEnvironmentVMMoveDiskRequestBody

type VirtualEnvironmentVMMoveDiskRequestBody struct {
	BandwidthLimit      *int              `json:"bwlimit,omitempty" url:"bwlimit,omitempty"`
	DeleteOriginalDisk  *types.CustomBool `json:"delete,omitempty"  url:"delete,omitempty,int"`
	Digest              *string           `json:"digest,omitempty"  url:"digest,omitempty"`
	Disk                string            `json:"disk"              url:"disk"`
	TargetStorage       string            `json:"storage"           url:"storage"`
	TargetStorageFormat *string           `json:"format,omitempty"  url:"format,omitempty"`
}

VirtualEnvironmentVMMoveDiskRequestBody contains the body for a VM move disk request.

type VirtualEnvironmentVMMoveDiskResponseBody

type VirtualEnvironmentVMMoveDiskResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMMoveDiskResponseBody contains the body from a VM move disk response.

type VirtualEnvironmentVMRebootRequestBody

type VirtualEnvironmentVMRebootRequestBody struct {
	Timeout *int `json:"timeout,omitempty" url:"timeout,omitempty"`
}

VirtualEnvironmentVMRebootRequestBody contains the body for a VM reboot request.

type VirtualEnvironmentVMRebootResponseBody

type VirtualEnvironmentVMRebootResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMRebootResponseBody contains the body from a VM reboot response.

type VirtualEnvironmentVMResizeDiskRequestBody

type VirtualEnvironmentVMResizeDiskRequestBody struct {
	Digest   *string           `json:"digest,omitempty"   url:"digest,omitempty"`
	Disk     string            `json:"disk"               url:"disk"`
	Size     string            `json:"size"               url:"size"`
	SkipLock *types.CustomBool `json:"skiplock,omitempty" url:"skiplock,omitempty,int"`
}

VirtualEnvironmentVMResizeDiskRequestBody contains the body for a VM resize disk request.

type VirtualEnvironmentVMShutdownRequestBody

type VirtualEnvironmentVMShutdownRequestBody struct {
	ForceStop  *types.CustomBool `json:"forceStop,omitempty"  url:"forceStop,omitempty,int"`
	KeepActive *types.CustomBool `json:"keepActive,omitempty" url:"keepActive,omitempty,int"`
	SkipLock   *types.CustomBool `json:"skipLock,omitempty"   url:"skipLock,omitempty,int"`
	Timeout    *int              `json:"timeout,omitempty"    url:"timeout,omitempty"`
}

VirtualEnvironmentVMShutdownRequestBody contains the body for a VM shutdown request.

type VirtualEnvironmentVMShutdownResponseBody

type VirtualEnvironmentVMShutdownResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMShutdownResponseBody contains the body from a VM shutdown response.

type VirtualEnvironmentVMStartResponseBody

type VirtualEnvironmentVMStartResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMStartResponseBody contains the body from a VM start response.

type VirtualEnvironmentVMStopResponseBody

type VirtualEnvironmentVMStopResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMStopResponseBody contains the body from a VM stop response.

type VirtualEnvironmentVMUpdateAsyncResponseBody

type VirtualEnvironmentVMUpdateAsyncResponseBody struct {
	Data *string `json:"data,omitempty"`
}

VirtualEnvironmentVMUpdateAsyncResponseBody contains the body from a VM async update response.

type VirtualEnvironmentVMUpdateRequestBody

type VirtualEnvironmentVMUpdateRequestBody VirtualEnvironmentVMCreateRequestBody

VirtualEnvironmentVMUpdateRequestBody contains the data for an virtual machine update request.

type VirtualEnvironmentVersionResponseBody

type VirtualEnvironmentVersionResponseBody struct {
	Data *VirtualEnvironmentVersionResponseData `json:"data,omitempty"`
}

VirtualEnvironmentVersionResponseBody contains the body from a version response.

type VirtualEnvironmentVersionResponseData

type VirtualEnvironmentVersionResponseData struct {
	Keyboard     string `json:"keyboard"`
	Release      string `json:"release"`
	RepositoryID string `json:"repoid"`
	Version      string `json:"version"`
}

VirtualEnvironmentVersionResponseData contains the data from a version response.

Directories

Path Synopsis
vm

Jump to

Keyboard shortcuts

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