Documentation
¶
Overview ¶
Package proxmox defines Proxmox Client interface.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface {
CloneVM(ctx context.Context, templateID int, clone VMCloneRequest) (VMCloneResponse, error)
ConfigureVM(ctx context.Context, vm *proxmox.VirtualMachine, options ...VirtualMachineOption) (*proxmox.Task, error)
FindVMResource(ctx context.Context, vmID uint64) (*proxmox.ClusterResource, error)
FindVMTemplateByTags(ctx context.Context, templateTags []string) (string, int32, error)
CheckID(ctx context.Context, vmID int64) (bool, error)
GetVM(ctx context.Context, nodeName string, vmID int64) (*proxmox.VirtualMachine, error)
DeleteVM(ctx context.Context, nodeName string, vmID int64) (*proxmox.Task, error)
GetTask(ctx context.Context, upID string) (*proxmox.Task, error)
GetReservableMemoryBytes(ctx context.Context, nodeName string, nodeMemoryAdjustment uint64) (uint64, error)
ResizeDisk(ctx context.Context, vm *proxmox.VirtualMachine, disk, size string) (*proxmox.Task, error)
ResumeVM(ctx context.Context, vm *proxmox.VirtualMachine) (*proxmox.Task, error)
StartVM(ctx context.Context, vm *proxmox.VirtualMachine) (*proxmox.Task, error)
TagVM(ctx context.Context, vm *proxmox.VirtualMachine, tag string) (*proxmox.Task, error)
UnmountCloudInitISO(ctx context.Context, vm *proxmox.VirtualMachine, device string) error
CloudInitStatus(ctx context.Context, vm *proxmox.VirtualMachine) (bool, error)
QemuAgentStatus(ctx context.Context, vm *proxmox.VirtualMachine) error
}
Client Global Proxmox client interface.
type Logger ¶
type Logger struct{}
Logger implements go-proxmox.LeveledLoggerInterface and uses klog as log sink.
Methods from the interface are mapped
- Errorf = Errorf
- Warnf = V(0).Infof
- Infof = V(2).Infof
- Debugf = V(4).Infof
type VMCloneRequest ¶
type VMCloneRequest struct {
Node string `json:"node"`
NewID int `json:"newID"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Format string `json:"format,omitempty"`
Full uint8 `json:"full,omitempty"`
Pool string `json:"pool,omitempty"`
SnapName string `json:"snapname,omitempty"`
Storage string `json:"storage,omitempty"`
Target string `json:"target,omitempty"`
}
VMCloneRequest Is the object used to clone a VM.
type VMCloneResponse ¶
type VMCloneResponse struct {
NewID int64 `json:"newId,omitempty"`
Task *proxmox.Task `json:"task,omitempty"`
}
VMCloneResponse response returned when cloning a VM.
type VirtualMachineOption ¶
type VirtualMachineOption = proxmox.VirtualMachineOption
VirtualMachineOption is an alias for VirtualMachineOption to prevent import conflicts.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package goproxmox implements a client for Proxmox resource lifecycle management.
|
Package goproxmox implements a client for Proxmox resource lifecycle management. |
Click to show internal directories.
Click to hide internal directories.