Workflow: Activities
Part of the Workflow module.
The module adds 26 activities to the designer toolbox, next to the standard ones of Elsa Workflows. In the activity picker they are organised in a tree, under Proxmox VE and Admin. The names below are the ones shown in the designer.
Activities that work on a guest have a Vm Id input with a picker listing the VMs and containers of the cluster. Node, storage, HA group and notifier inputs have pickers too.
Activities that start a Proxmox VE task return its identifier in the TaskUpid output. They do not wait for the task to end: chain PVE Wait For Task when the next step depends on the result.
Proxmox VE / Guest / Inventory
Section titled “Proxmox VE / Guest / Inventory”PVE Get Guests
Section titled “PVE Get Guests”Lists all VMs and containers with status, node, tags, pool, lock, CPU, memory and disk usage, uptime
- Inputs: none
- Output:
Vms(list ofGuestInfo)
PVE Get VM Config
Section titled “PVE Get VM Config”Reads the configuration of a VM/CT: name, description, pool, cores, sockets, memory, OS type, tags, start on boot, protection, template flag, disks, network interfaces
- Inputs: Vm Id
- Output:
Config(GuestConfigInfo)
PVE Get Guest RRD Data
Section titled “PVE Get Guest RRD Data”Historical metrics of a VM/CT
- Inputs: Vm Id, Time Frame (default
Day), Consolidation (defaultAverage) - Output:
Data(list ofVmRrdData)
Proxmox VE / Guest / Operations
Section titled “Proxmox VE / Guest / Operations”PVE VM Power Action
Section titled “PVE VM Power Action”Start, Stop, Shutdown, Reset, Suspend, Resume or Reboot a VM/CT
- Inputs: Vm Id, Action (default
Start) - Output:
TaskUpid - Proxmox VE privilege:
VM.PowerMgmt
PVE Backup
Section titled “PVE Backup”Runs a vzdump backup of a VM/CT
- Inputs: Vm Id, Node (the node where the VM/CT is located), Storage (backup storages only), Mode (
Snapshot,Suspend,Stop; defaultSnapshot), Compress (None,Lzo,Gzip,Zstd; defaultZstd), Notes - Output:
TaskUpid - Proxmox VE privilege:
VM.Backup,Datastore.AllocateSpace
PVE Migrate
Section titled “PVE Migrate”Migrates a VM/CT to another node
- Inputs: Vm Id, Target Node, Online (default on), Target Storage (optional)
- Output:
TaskUpid - Proxmox VE privilege:
VM.Migrate
PVE Clone
Section titled “PVE Clone”Clones a VM/CT
- Inputs: Vm Id, New Vm Id, New Name, Target Node (optional), Target Storage (optional), Full Clone (default on; off = linked clone), Description
- Output:
TaskUpid - Proxmox VE privilege:
VM.Clone,VM.Allocate,Datastore.AllocateSpace
PVE Convert to Template
Section titled “PVE Convert to Template”Converts a VM/CT to a template
- Inputs: Vm Id
- Output:
TaskUpid - Proxmox VE privilege:
VM.Allocate
PVE Resize Disk
Section titled “PVE Resize Disk”Resizes a disk of a VM/CT
- Inputs: Vm Id, Disk (for example
scsi0,virtio0,rootfs,mp0), Size (increment such as+10G, or absolute such as50G) - Output:
TaskUpid - Proxmox VE privilege:
VM.Config.Disk
Proxmox VE / Guest / Snapshot
Section titled “Proxmox VE / Guest / Snapshot”PVE Create Snapshot
Section titled “PVE Create Snapshot”Creates a snapshot
- Inputs: Vm Id, Snapshot Name, Description, Include Vm State (QEMU only, default off)
- Output:
TaskUpid - Proxmox VE privilege:
VM.Snapshot
PVE Delete Snapshot
Section titled “PVE Delete Snapshot”Deletes a snapshot
- Inputs: Vm Id, Snapshot Name, Force (default on)
- Output:
TaskUpid - Proxmox VE privilege:
VM.Snapshot
PVE Rollback Snapshot
Section titled “PVE Rollback Snapshot”Rolls a VM/CT back to a snapshot
- Inputs: Vm Id, Snapshot Name
- Output:
TaskUpid - Proxmox VE privilege:
VM.Snapshot.Rollback
PVE Get Snapshots
Section titled “PVE Get Snapshots”Lists the snapshots of a VM/CT, newest first, with name, description, creation time, parent and VM state flag
- Inputs: Vm Id
- Output:
Snapshots(list ofSnapshotInfo)
PVE Update Snapshot
Section titled “PVE Update Snapshot”Changes the description of a snapshot
- Inputs: Vm Id, Snapshot Name, Description
- Output:
TaskUpid - Proxmox VE privilege:
VM.Snapshot
Proxmox VE / Node / Inventory
Section titled “Proxmox VE / Node / Inventory”PVE Get Nodes
Section titled “PVE Get Nodes”Lists the cluster nodes with status and CPU, memory and disk usage (fractions from 0 to 1)
- Inputs: none
- Output:
Nodes(list ofNodeInfo)
PVE Get Node Replications
Section titled “PVE Get Node Replications”Lists the replication jobs of a node with last sync, next sync, duration, fail count and error
- Inputs: Node, Vm Id (optional filter)
- Output:
Replications(list ofReplicationInfo)
PVE Get Node RRD Data
Section titled “PVE Get Node RRD Data”Historical metrics of a node
- Inputs: Node, Time Frame (default
Day), Consolidation (defaultAverage) - Output:
Data(list ofNodeRrdData)
Proxmox VE / Node / Operations
Section titled “Proxmox VE / Node / Operations”PVE Node Shutdown/Reboot
Section titled “PVE Node Shutdown/Reboot”Reboots or shuts down a node
- Inputs: Node, Action (
RebootorShutdown; defaultReboot) - Output:
TaskUpid - Proxmox VE privilege:
Sys.PowerMgmt
Proxmox VE / Storage / Inventory
Section titled “Proxmox VE / Storage / Inventory”PVE Get Storages
Section titled “PVE Get Storages”Lists the storages with node, status, type, content types and usage (a fraction from 0 to 1)
- Inputs: none
- Output:
Storages(list ofStorageInfo)
PVE Get Storage Contents
Section titled “PVE Get Storage Contents”Lists the content of a storage (backups, ISO images, templates, disk images)
- Inputs: Node, Storage
- Output:
Contents(list ofStorageContentInfo)
PVE Get Storage RRD Data
Section titled “PVE Get Storage RRD Data”Historical used and total space of a storage
- Inputs: Node, Storage, Time Frame (default
Day), Consolidation (defaultAverage) - Output:
Data(list ofNodeStorageRrdData)
Proxmox VE / Cluster
Section titled “Proxmox VE / Cluster”PVE Manage HA (Cluster / HA)
Section titled “PVE Manage HA (Cluster / HA)”Manages the High Availability resource of a VM/CT. Enable adds it to HA, Disable removes it, Migrate and Relocate move it to the target node
- Inputs: Vm Id, Action (default
Enable), Group (forEnable), State (forEnable:Started,Stopped,Enabled,Disabled,Ignored; defaultStarted), Max Relocate and Max Restart (forEnable; default 1), Target Node (required forMigrateandRelocate) - Output:
Success - Proxmox VE privilege:
Sys.Console
PVE Get Cluster Replications (Cluster / Inventory)
Section titled “PVE Get Cluster Replications (Cluster / Inventory)”Lists the replication jobs configured in the cluster: ID, guest, target, type, schedule, disabled flag, rate and comment. The state of the last sync is not included
- Inputs: none
- Output:
Replications(list ofReplicationInfo)
Proxmox VE / Utils
Section titled “Proxmox VE / Utils”PVE Wait For Task
Section titled “PVE Wait For Task”Waits for a Proxmox VE task to end
- Inputs: Task Upid, Timeout Ms (default 300000, that is 5 minutes)
- Output:
Success(true when the task ended successfully)
Admin / Utils
Section titled “Admin / Utils”Notify
Section titled “Notify”Sends a notification through the Notifier
- Inputs: Subject (default
Workflow Notification), Body, Context (defaultWorkflow), Severity (defaultInfo), Notifiers (one of the enabled notifier configurations, or a comma-separated list of names through an expression; empty = all the enabled ones) - Output: none
Filter Collection
Section titled “Filter Collection”Filters a collection with a Dynamic LINQ expression on the fields of its items. An empty expression returns the collection unchanged
- Inputs: Source, Expression
- Output:
Result
Data types
Section titled “Data types”The data types returned by the inventory activities are available as variable types in the designer: GuestInfo, GuestConfigInfo, GuestDiskInfo, GuestNetworkInfo, NodeInfo, StorageInfo, StorageContentInfo, SnapshotInfo, ReplicationInfo, VmRrdData, NodeRrdData, NodeStorageRrdData. All of them except GuestConfigInfo are also available as lists.