vss-cli 2025.2.0__tar.gz → 2025.2.1.dev3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {vss-cli-2025.2.0/vss_cli.egg-info → vss-cli-2025.2.1.dev3}/PKG-INFO +3 -3
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/const.py +6 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/clib.yaml +1 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/clone.yaml +1 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/shell.yaml +1 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/template.yaml +1 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/vm.py +54 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3/vss_cli.egg-info}/PKG-INFO +3 -3
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/requires.txt +1 -1
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/LICENSE +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/README.md +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/pyproject.toml +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/setup.cfg +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/setup.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/tests/test_vss_cli.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/__init__.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/autocompletion.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/cli.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/config.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/config.yaml +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data/image.yaml +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/data_types.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/exceptions.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/hcio.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/helper.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/__init__.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/account.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/assist.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/completion.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/__init__.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/callbacks.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/contentlib.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/domain.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/floppy.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/folder.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/helper.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/image.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/inventory.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/iso.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/net.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/os.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/rel_args.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/rel_opts.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/template.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/compute_plugins/vmdks.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/configure.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/key.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/message.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/misc.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/ovf.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/plugins.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/raw.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/__init__.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/change.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/export.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/folder.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/image.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/inventory.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/new.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/restore.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/retirement.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/snapshot.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/request_plugins/vmdk.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/service.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/shell.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/status.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/stor.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/token.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/upgrade.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/plugins/vpn.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/rel_opts.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/sstatus.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/utils/__init__.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/utils/emoji.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/utils/threading.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/validators.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/vss.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/vssconst.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli/yaml.py +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/SOURCES.txt +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/dependency_links.txt +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/entry_points.txt +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/not-zip-safe +0 -0
- {vss-cli-2025.2.0 → vss-cli-2025.2.1.dev3}/vss_cli.egg-info/top_level.txt +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: vss-cli
|
|
3
|
-
Version: 2025.2.
|
|
3
|
+
Version: 2025.2.1.dev3
|
|
4
4
|
Summary: ITS Private Cloud Command Line Interface
|
|
5
5
|
Home-page: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli
|
|
6
|
-
Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.2.
|
|
6
|
+
Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.2.1-dev3.zip
|
|
7
7
|
Author: University of Toronto
|
|
8
8
|
Author-email: vss-apps@eis.utoronto.ca
|
|
9
9
|
Maintainer-email: vss-py@eis.utoronto.ca
|
|
@@ -25,7 +25,7 @@ Classifier: Topic :: System :: Systems Administration
|
|
|
25
25
|
Requires-Python: >=3.8.5
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
27
|
License-File: LICENSE
|
|
28
|
-
Requires-Dist: pyvss>=
|
|
28
|
+
Requires-Dist: pyvss>=2025.2.0
|
|
29
29
|
Requires-Dist: click==8.1.8
|
|
30
30
|
Requires-Dist: click-log==0.4.0
|
|
31
31
|
Requires-Dist: click-plugins==1.1.1
|
|
@@ -8,7 +8,7 @@ except ImportError:
|
|
|
8
8
|
|
|
9
9
|
PACKAGE_NAME = "vss_cli"
|
|
10
10
|
|
|
11
|
-
__version__ = "2025.2.
|
|
11
|
+
__version__ = "2025.2.1-dev3"
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
DEFAULT_TIMEOUT = 30
|
|
@@ -482,6 +482,11 @@ COLUMNS_VM_STATE = [
|
|
|
482
482
|
COLUMNS_VM_TOOLS = [("version",), ("version_status",), ("running_status",)]
|
|
483
483
|
COLUMNS_VM_TPM = [('label',), ('summary',), ('key',)]
|
|
484
484
|
COLUMNS_VM_GPU = [('label',), ('summary',), ('key',)]
|
|
485
|
+
COLUMNS_VM_ENCRYPTION = [
|
|
486
|
+
('is_encrypted',),
|
|
487
|
+
('migrate_encryption_mode',),
|
|
488
|
+
('ft_encryption_mode',),
|
|
489
|
+
]
|
|
485
490
|
COLUMNS_VM_RESTORE_POINTS = [('id',), ('timestamp',)]
|
|
486
491
|
COLUMNS_VM_VBS = [('vbs_enabled',), ('firmware',), ('tpm', 'tpm[*].label')]
|
|
487
492
|
COLUMNS_VM_HW = [
|
|
@@ -803,6 +803,15 @@ def compute_vm_get_gpu(ctx: Configuration):
|
|
|
803
803
|
ctx.echo(format_output(ctx, objs, columns=columns))
|
|
804
804
|
|
|
805
805
|
|
|
806
|
+
@compute_vm_get.command('encryption', short_help='Encryption configuration')
|
|
807
|
+
@pass_context
|
|
808
|
+
def compute_vm_get_encryption(ctx: Configuration):
|
|
809
|
+
"""Virtual machine encryption configuration."""
|
|
810
|
+
columns = ctx.columns or const.COLUMNS_VM_ENCRYPTION
|
|
811
|
+
obj = ctx.get_vm_encrypt(ctx.moref)
|
|
812
|
+
ctx.echo(format_output(ctx, [obj], columns=columns, single=True))
|
|
813
|
+
|
|
814
|
+
|
|
806
815
|
@compute_vm_get.group('restore-point', short_help='Restore Points')
|
|
807
816
|
@pass_context
|
|
808
817
|
def compute_vm_get_rp(ctx: Configuration):
|
|
@@ -4858,7 +4867,7 @@ def compute_vm_mk_clib(
|
|
|
4858
4867
|
def compute_vm_set_ubuntu_pro(ctx: Configuration, action):
|
|
4859
4868
|
"""Enable Ubuntu Pro.
|
|
4860
4869
|
|
|
4861
|
-
vss-cli compute vm set <name-or-vm_id> attach|detach
|
|
4870
|
+
vss-cli compute vm set <name-or-vm_id> ubuntu-pro attach|detach
|
|
4862
4871
|
|
|
4863
4872
|
Retrieving activation token requires VMware Tools Running.
|
|
4864
4873
|
"""
|
|
@@ -4891,3 +4900,47 @@ def compute_vm_set_ubuntu_pro(ctx: Configuration, action):
|
|
|
4891
4900
|
# wait for request
|
|
4892
4901
|
if ctx.wait_for_requests:
|
|
4893
4902
|
ctx.wait_for_request_to(obj)
|
|
4903
|
+
|
|
4904
|
+
|
|
4905
|
+
@compute_vm_set.command('encryption', short_help='Encrypt a virtual machine')
|
|
4906
|
+
@click.argument(
|
|
4907
|
+
'action',
|
|
4908
|
+
type=click.Choice(['on']),
|
|
4909
|
+
required=True,
|
|
4910
|
+
)
|
|
4911
|
+
@click.option(
|
|
4912
|
+
'-f',
|
|
4913
|
+
'--force',
|
|
4914
|
+
is_flag=True,
|
|
4915
|
+
help='Shut down or power off before encryption.',
|
|
4916
|
+
)
|
|
4917
|
+
@click.option(
|
|
4918
|
+
'-o', '--power-on', is_flag=True, help='Power of after encrypting.'
|
|
4919
|
+
)
|
|
4920
|
+
@pass_context
|
|
4921
|
+
def compute_vm_set_encryption(
|
|
4922
|
+
ctx: "Configuration", action: str, force: bool, power_on: bool
|
|
4923
|
+
):
|
|
4924
|
+
"""Encrypt a virtual machine.
|
|
4925
|
+
|
|
4926
|
+
vss-cli compute vm set <name-or-vm_id> encryption on
|
|
4927
|
+
|
|
4928
|
+
Encrypt the data stored on a virtual machine's virtual disks,
|
|
4929
|
+
protecting sensitive information.
|
|
4930
|
+
"""
|
|
4931
|
+
if not ctx.is_powered_off_vm(ctx.moref) and not force:
|
|
4932
|
+
raise VssCliError(
|
|
4933
|
+
'Cannot perform operation in current power state: poweredOn'
|
|
4934
|
+
)
|
|
4935
|
+
if action == 'on':
|
|
4936
|
+
obj = ctx.encrypt_vm(ctx.moref, force=force, power_on=power_on)
|
|
4937
|
+
elif action == 'off':
|
|
4938
|
+
raise NotImplementedError('Not implemented')
|
|
4939
|
+
else:
|
|
4940
|
+
raise VssCliError('Invalid action')
|
|
4941
|
+
# print
|
|
4942
|
+
columns = ctx.columns or const.COLUMNS_REQUEST_SUBMITTED
|
|
4943
|
+
ctx.echo(format_output(ctx, [obj], columns=columns, single=True))
|
|
4944
|
+
# wait for request
|
|
4945
|
+
if ctx.wait_for_requests:
|
|
4946
|
+
ctx.wait_for_request_to(obj)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: vss-cli
|
|
3
|
-
Version: 2025.2.
|
|
3
|
+
Version: 2025.2.1.dev3
|
|
4
4
|
Summary: ITS Private Cloud Command Line Interface
|
|
5
5
|
Home-page: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli
|
|
6
|
-
Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.2.
|
|
6
|
+
Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.2.1-dev3.zip
|
|
7
7
|
Author: University of Toronto
|
|
8
8
|
Author-email: vss-apps@eis.utoronto.ca
|
|
9
9
|
Maintainer-email: vss-py@eis.utoronto.ca
|
|
@@ -25,7 +25,7 @@ Classifier: Topic :: System :: Systems Administration
|
|
|
25
25
|
Requires-Python: >=3.8.5
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
27
|
License-File: LICENSE
|
|
28
|
-
Requires-Dist: pyvss>=
|
|
28
|
+
Requires-Dist: pyvss>=2025.2.0
|
|
29
29
|
Requires-Dist: click==8.1.8
|
|
30
30
|
Requires-Dist: click-log==0.4.0
|
|
31
31
|
Requires-Dist: click-plugins==1.1.1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|