Manage Parallels Desktop VMs with prlctl
and prlsrvctl
. Only some of
the prlctl commands implemented so far. Of those that have been implemented,
not all of the options may have been provided yet. For a complete reference,
see the Parallels Desktop Reference Guide.
This module requires the prlctl binary to be installed to run most functions. To run parallels.prlsrvctl, the prlsrvctl binary is required.
What has not been implemented yet can be accessed through parallels.prlctl
and parallels.prlsrvctl
(note the preceding double dash --
as
necessary):
salt '*' parallels.prlctl installtools macvm runas=macdev
salt -- '*' parallels.prlctl capture 'macvm --file macvm.display.png' runas=macdev
salt -- '*' parallels.prlsrvctl set '--mem-limit auto' runas=macdev
New in version 2016.3.0.
salt.modules.parallels.
clone
(name, new_name, linked=False, template=False, runas=None)¶Clone a VM
New in version 2016.11.0.
Parameters: |
---|
Example:
salt '*' parallels.clone macvm macvm_new runas=macdev
salt '*' parallels.clone macvm macvm_templ template=True runas=macdev
salt.modules.parallels.
delete
(name, runas=None)¶Delete a VM
New in version 2016.11.0.
Parameters: |
---|
Example:
salt '*' parallels.exec macvm 'find /etc/paths.d' runas=macdev
salt.modules.parallels.
delete_snapshot
(name, snap_name, runas=None, all=False)¶Delete a snapshot
Note
Deleting a snapshot from which other snapshots are dervied will not delete the derived snapshots
Parameters: |
---|
Example:
salt '*' parallels.delete_snapshot macvm 'unneeded snapshot' runas=macdev
salt '*' parallels.delete_snapshot macvm 'Snapshot for linked clone' all=True runas=macdev
salt.modules.parallels.
exec_
(name, command, runas=None)¶Run a command on a VM
Parameters: |
---|
Example:
salt '*' parallels.exec macvm 'find /etc/paths.d' runas=macdev
salt.modules.parallels.
exists
(name, runas=None)¶Query whether a VM exists
New in version 2016.11.0.
Parameters: |
---|
Example:
salt '*' parallels.exists macvm runas=macdev
salt.modules.parallels.
list_snapshots
(name, snap_name=None, tree=False, names=False, runas=None)¶List the snapshots
Parameters: |
|
---|
Example:
salt '*' parallels.list_snapshots macvm runas=macdev
salt '*' parallels.list_snapshots macvm tree=True runas=macdev
salt '*' parallels.list_snapshots macvm snap_name=original runas=macdev
salt '*' parallels.list_snapshots macvm names=True runas=macdev
salt.modules.parallels.
list_vms
(name=None, info=False, all=False, args=None, runas=None, template=False)¶List information about the VMs
Parameters: |
|
---|
Example:
salt '*' parallels.list_vms runas=macdev
salt '*' parallels.list_vms name=macvm info=True runas=macdev
salt '*' parallels.list_vms info=True runas=macdev
salt '*' parallels.list_vms ' -o uuid,status' all=True runas=macdev
salt.modules.parallels.
prlctl
(sub_cmd, args=None, runas=None)¶Execute a prlctl command
Parameters: |
---|
Example:
salt '*' parallels.prlctl user list runas=macdev
salt '*' parallels.prlctl exec 'macvm uname' runas=macdev
salt -- '*' parallels.prlctl capture 'macvm --file macvm.display.png' runas=macdev
salt.modules.parallels.
prlsrvctl
(sub_cmd, args=None, runas=None)¶Execute a prlsrvctl command
New in version 2016.11.0.
Parameters: |
---|
Example:
salt '*' parallels.prlsrvctl info runas=macdev
salt '*' parallels.prlsrvctl usb list runas=macdev
salt -- '*' parallels.prlsrvctl set '--mem-limit auto' runas=macdev
salt.modules.parallels.
reset
(name, runas=None)¶Reset a VM by performing a hard shutdown and then a restart
Parameters: |
---|
Example:
salt '*' parallels.reset macvm runas=macdev
salt.modules.parallels.
restart
(name, runas=None)¶Restart a VM by gracefully shutting it down and then restarting it
Parameters: |
---|
Example:
salt '*' parallels.restart macvm runas=macdev
salt.modules.parallels.
revert_snapshot
(name, snap_name, runas=None)¶Revert a VM to a snapshot
Parameters: |
---|
Example:
salt '*' parallels.revert_snapshot macvm base-with-updates runas=macdev
salt.modules.parallels.
snapshot
(name, snap_name=None, desc=None, runas=None)¶Create a snapshot
Parameters: |
---|
Example:
salt '*' parallels.create_snapshot macvm snap_name=macvm-original runas=macdev
salt '*' parallels.create_snapshot macvm snap_name=macvm-updates desc='clean install with updates' runas=macdev
salt.modules.parallels.
snapshot_id_to_name
(name, snap_id, strict=False, runas=None)¶Attempt to convert a snapshot ID to a snapshot name. If the snapshot has no name or if the ID is not found or invalid, an empty string will be returned
Parameters: |
---|
Example data
ID: {a5b8999f-5d95-4aff-82de-e515b0101b66}
Name: original
Date: 2016-03-04 10:50:34
Current: yes
State: poweroff
Description: original state
CLI Example:
salt '*' parallels.snapshot_id_to_name macvm a5b8999f-5d95-4aff-82de-e515b0101b66 runas=macdev
salt.modules.parallels.
snapshot_name_to_id
(name, snap_name, strict=False, runas=None)¶Attempt to convert a snapshot name to a snapshot ID. If the name is not found an empty string is returned. If multiple snapshots share the same name, a list will be returned
Parameters: |
---|
CLI Example:
salt '*' parallels.snapshot_id_to_name macvm original runas=macdev
salt.modules.parallels.
start
(name, runas=None)¶Start a VM
Parameters: |
---|
Example:
salt '*' parallels.start macvm runas=macdev
salt.modules.parallels.
status
(name, runas=None)¶Status of a VM
Parameters: |
---|
Example:
salt '*' parallels.status macvm runas=macdev
salt.modules.parallels.
stop
(name, kill=False, runas=None)¶Stop a VM
Parameters: |
---|
Example:
salt '*' parallels.stop macvm runas=macdev
salt '*' parallels.stop macvm kill=True runas=macdev
Docs for previous releases are available on readthedocs.org.
Latest Salt release: 2019.2.1