vss-cli 2025.2.1.dev4__tar.gz → 2025.3.0.dev0__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.
Files changed (86) hide show
  1. {vss_cli-2025.2.1.dev4/vss_cli.egg-info → vss_cli-2025.3.0.dev0}/PKG-INFO +5 -4
  2. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/autocompletion.py +3 -5
  3. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/const.py +1 -1
  4. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/clib.yaml +1 -1
  5. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/clone.yaml +1 -1
  6. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/shell.yaml +1 -1
  7. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/template.yaml +1 -1
  8. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/vm.py +15 -11
  9. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0/vss_cli.egg-info}/PKG-INFO +5 -4
  10. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/requires.txt +1 -1
  11. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/LICENSE +0 -0
  12. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/README.md +0 -0
  13. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/pyproject.toml +0 -0
  14. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/setup.cfg +0 -0
  15. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/setup.py +0 -0
  16. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/tests/test_vss_cli.py +0 -0
  17. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/__init__.py +0 -0
  18. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/cli.py +0 -0
  19. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/config.py +0 -0
  20. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/config.yaml +0 -0
  21. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data/image.yaml +0 -0
  22. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/data_types.py +0 -0
  23. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/exceptions.py +0 -0
  24. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/hcio.py +0 -0
  25. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/helper.py +0 -0
  26. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/__init__.py +0 -0
  27. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/account.py +0 -0
  28. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/assist.py +0 -0
  29. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/completion.py +0 -0
  30. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute.py +0 -0
  31. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/__init__.py +0 -0
  32. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/callbacks.py +0 -0
  33. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/contentlib.py +0 -0
  34. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/domain.py +0 -0
  35. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/floppy.py +0 -0
  36. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/folder.py +0 -0
  37. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/helper.py +0 -0
  38. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/image.py +0 -0
  39. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/inventory.py +0 -0
  40. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/iso.py +0 -0
  41. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/net.py +0 -0
  42. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/os.py +0 -0
  43. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/rel_args.py +0 -0
  44. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/rel_opts.py +0 -0
  45. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/template.py +0 -0
  46. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/compute_plugins/vmdks.py +0 -0
  47. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/configure.py +0 -0
  48. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/key.py +0 -0
  49. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/message.py +0 -0
  50. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/misc.py +0 -0
  51. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/ovf.py +0 -0
  52. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/plugins.py +0 -0
  53. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/raw.py +0 -0
  54. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request.py +0 -0
  55. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/__init__.py +0 -0
  56. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/change.py +0 -0
  57. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/export.py +0 -0
  58. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/folder.py +0 -0
  59. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/image.py +0 -0
  60. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/inventory.py +0 -0
  61. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/new.py +0 -0
  62. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/restore.py +0 -0
  63. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/retirement.py +0 -0
  64. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/snapshot.py +0 -0
  65. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/request_plugins/vmdk.py +0 -0
  66. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/service.py +0 -0
  67. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/shell.py +0 -0
  68. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/status.py +0 -0
  69. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/stor.py +0 -0
  70. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/token.py +0 -0
  71. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/upgrade.py +0 -0
  72. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/plugins/vpn.py +0 -0
  73. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/rel_opts.py +0 -0
  74. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/sstatus.py +0 -0
  75. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/utils/__init__.py +0 -0
  76. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/utils/emoji.py +0 -0
  77. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/utils/threading.py +0 -0
  78. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/validators.py +0 -0
  79. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/vss.py +0 -0
  80. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/vssconst.py +0 -0
  81. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli/yaml.py +0 -0
  82. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/SOURCES.txt +0 -0
  83. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/dependency_links.txt +0 -0
  84. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/entry_points.txt +0 -0
  85. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/not-zip-safe +0 -0
  86. {vss_cli-2025.2.1.dev4 → vss_cli-2025.3.0.dev0}/vss_cli.egg-info/top_level.txt +0 -0
@@ -1,9 +1,9 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: vss-cli
3
- Version: 2025.2.1.dev4
3
+ Version: 2025.3.0.dev0
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.1-dev4.zip
6
+ Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.3.0-dev0.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>=2025.2.0
28
+ Requires-Dist: pyvss>=2025.2.1
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
@@ -74,6 +74,7 @@ Dynamic: author-email
74
74
  Dynamic: download-url
75
75
  Dynamic: home-page
76
76
  Dynamic: license
77
+ Dynamic: license-file
77
78
  Dynamic: maintainer-email
78
79
  Dynamic: project-url
79
80
  Dynamic: provides-extra
@@ -35,6 +35,7 @@ def to_completion_item(func: Callable):
35
35
 
36
36
  def wrapper_tci(*args, **kwargs):
37
37
  results = func(*args, **kwargs)
38
+
38
39
  return [CompletionItem(item[0], help=f'{item[1]}') for item in results]
39
40
 
40
41
  return wrapper_tci
@@ -65,7 +66,6 @@ def _autocomplete(
65
66
  completions.append(r)
66
67
 
67
68
  completions.sort(key=lambda x: x[sort_index])
68
-
69
69
  return [c for c in completions if incomplete in c[complete_index]]
70
70
  return completions
71
71
 
@@ -223,9 +223,7 @@ def folders(
223
223
  return _autocomplete(
224
224
  ctx.client.get_folders,
225
225
  incomplete,
226
- ['moref', 'path'],
227
- sort_index=1,
228
- complete_index=1,
226
+ ['path'],
229
227
  f_kwargs={
230
228
  "show_all": True,
231
229
  "sort": "path,desc",
@@ -244,7 +242,7 @@ def networks(
244
242
  return _autocomplete(
245
243
  ctx.client.get_networks,
246
244
  incomplete,
247
- ['moref', 'label'],
245
+ ['name', 'label'],
248
246
  sort_index=1,
249
247
  complete_index=1,
250
248
  f_kwargs={"show_all": True, "sort": "label,desc", "per_page": 500},
@@ -8,7 +8,7 @@ except ImportError:
8
8
 
9
9
  PACKAGE_NAME = "vss_cli"
10
10
 
11
- __version__ = "2025.2.1-dev4"
11
+ __version__ = "2025.3.0-dev0"
12
12
 
13
13
 
14
14
  DEFAULT_TIMEOUT = 30
@@ -1,5 +1,5 @@
1
1
  ####################################################
2
- # VSS-CLI Spec from CLib 2025.2.1-dev4 #
2
+ # VSS-CLI Spec from CLib 2025.3.0-dev0 #
3
3
  ####################################################
4
4
  built: clib # Required: Do not remove.
5
5
  machine:
@@ -1,5 +1,5 @@
1
1
  ####################################################
2
- # VSS-CLI Spec from Clone 2025.2.1-dev4 #
2
+ # VSS-CLI Spec from Clone 2025.3.0-dev0 #
3
3
  ####################################################
4
4
  built: clone # Required: Do not remove.
5
5
  machine:
@@ -1,5 +1,5 @@
1
1
  ####################################################
2
- # VSS-CLI Spec shell VM 2025.2.1-dev4 #
2
+ # VSS-CLI Spec shell VM 2025.3.0-dev0 #
3
3
  ####################################################
4
4
  built: os_install # Required: Do not remove.
5
5
  machine:
@@ -1,5 +1,5 @@
1
1
  ####################################################
2
- # VSS-CLI Spec from Template 2025.2.1-dev4 #
2
+ # VSS-CLI Spec from Template 2025.3.0-dev0 #
3
3
  ####################################################
4
4
  built: template # Required: Do not remove.
5
5
  machine:
@@ -4902,17 +4902,19 @@ def compute_vm_set_ubuntu_pro(ctx: Configuration, action):
4902
4902
  ctx.wait_for_request_to(obj)
4903
4903
 
4904
4904
 
4905
- @compute_vm_set.command('encryption', short_help='Encrypt a virtual machine')
4905
+ @compute_vm_set.command(
4906
+ 'encryption', short_help='Encrypt or decrypt a virtual machine'
4907
+ )
4906
4908
  @click.argument(
4907
4909
  'action',
4908
- type=click.Choice(['on']),
4910
+ type=click.Choice(['on', 'off']),
4909
4911
  required=True,
4910
4912
  )
4911
4913
  @click.option(
4912
4914
  '-f',
4913
4915
  '--force',
4914
4916
  is_flag=True,
4915
- help='Shut down or power off before encryption.',
4917
+ help='Power off before encryption.',
4916
4918
  )
4917
4919
  @click.option(
4918
4920
  '-o', '--power-on', is_flag=True, help='Power of after encrypting.'
@@ -4921,23 +4923,25 @@ def compute_vm_set_ubuntu_pro(ctx: Configuration, action):
4921
4923
  def compute_vm_set_encryption(
4922
4924
  ctx: "Configuration", action: str, force: bool, power_on: bool
4923
4925
  ):
4924
- """Encrypt a virtual machine.
4926
+ """Manage virtual machine encryption.
4925
4927
 
4926
- vss-cli compute vm set <name-or-vm_id> encryption on
4928
+ vss-cli compute vm set <name-or-vm_id> encryption on|off
4927
4929
 
4928
- Encrypt the data stored on a virtual machine's virtual disks,
4930
+ Encrypt or decrypt the data stored on a virtual machine's virtual disks,
4929
4931
  protecting sensitive information.
4930
4932
  """
4931
4933
  if not ctx.is_powered_off_vm(ctx.moref) and not force:
4932
4934
  raise VssCliError(
4933
4935
  'Cannot perform operation in current power state: poweredOn'
4934
4936
  )
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:
4937
+ lookup = {'on': ctx.encrypt_vm, 'off': ctx.decrypt_vm}
4938
+ try:
4939
+ payload = {'vm_id': ctx.moref, 'force': force, 'power_on': power_on}
4940
+ ref = lookup[action]
4941
+ except KeyError:
4940
4942
  raise VssCliError('Invalid action')
4943
+ # submit
4944
+ obj = ref(**payload)
4941
4945
  # print
4942
4946
  columns = ctx.columns or const.COLUMNS_REQUEST_SUBMITTED
4943
4947
  ctx.echo(format_output(ctx, [obj], columns=columns, single=True))
@@ -1,9 +1,9 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: vss-cli
3
- Version: 2025.2.1.dev4
3
+ Version: 2025.3.0.dev0
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.1-dev4.zip
6
+ Download-URL: https://gitlab-ee.eis.utoronto.ca/vss/vss-cli/archive/2025.3.0-dev0.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>=2025.2.0
28
+ Requires-Dist: pyvss>=2025.2.1
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
@@ -74,6 +74,7 @@ Dynamic: author-email
74
74
  Dynamic: download-url
75
75
  Dynamic: home-page
76
76
  Dynamic: license
77
+ Dynamic: license-file
77
78
  Dynamic: maintainer-email
78
79
  Dynamic: project-url
79
80
  Dynamic: provides-extra
@@ -1,4 +1,4 @@
1
- pyvss>=2025.2.0
1
+ pyvss>=2025.2.1
2
2
  click==8.1.8
3
3
  click-log==0.4.0
4
4
  click-plugins==1.1.1
File without changes