vss-cli 2025.6.0.dev0__tar.gz → 2025.6.0.dev2__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.6.0.dev0/vss_cli.egg-info → vss_cli-2025.6.0.dev2}/PKG-INFO +2 -2
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/pyproject.toml +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/const.py +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/clib.yaml +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/clone.yaml +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/shell.yaml +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/template.yaml +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/vm.py +16 -11
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2/vss_cli.egg-info}/PKG-INFO +2 -2
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli.egg-info/requires.txt +1 -1
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/LICENSE +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/README.md +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/docs/conf.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/setup.cfg +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/tests/test_vss_cli.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/__init__.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/autocompletion.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/cli.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/config.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/config.yaml +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data/image.yaml +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/data_types.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/exceptions.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/hcio.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/helper.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/__init__.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/account.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/assist.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/completion.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/__init__.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/callbacks.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/contentlib.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/domain.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/floppy.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/folder.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/helper.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/image.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/inventory.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/iso.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/net.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/os.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/rel_args.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/rel_opts.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/template.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/vmdks.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/configure.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/key.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/message.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/misc.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/ovf.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/plugins.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/raw.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/__init__.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/change.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/export.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/folder.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/image.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/inventory.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/new.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/restore.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/retirement.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/snapshot.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/vmdk.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/service.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/shell.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/status.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/stor.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/token.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/upgrade.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/vpn.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/rel_opts.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/sstatus.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/utils/__init__.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/utils/emoji.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/utils/threading.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/validators.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/vss.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/vssconst.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/yaml.py +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli.egg-info/SOURCES.txt +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli.egg-info/dependency_links.txt +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli.egg-info/entry_points.txt +0 -0
- {vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vss-cli
|
|
3
|
-
Version: 2025.6.0.
|
|
3
|
+
Version: 2025.6.0.dev2
|
|
4
4
|
Summary: ITS Private Cloud CLI
|
|
5
5
|
Author-email: University of Toronto <vss-apps@eis.utoronto.ca>
|
|
6
6
|
Maintainer-email: vss-py@eis.utoronto.ca
|
|
@@ -34,7 +34,7 @@ Requires-Dist: jinja2>=2.10
|
|
|
34
34
|
Requires-Dist: dateparser==1.2.1
|
|
35
35
|
Requires-Dist: rich==13.9.4
|
|
36
36
|
Requires-Dist: pick==2.2.0
|
|
37
|
-
Requires-Dist: dataclasses-json==0.
|
|
37
|
+
Requires-Dist: dataclasses-json==0.6.7
|
|
38
38
|
Requires-Dist: validators==0.34.0
|
|
39
39
|
Requires-Dist: ruamel.yaml==0.17.21
|
|
40
40
|
Requires-Dist: qrcode==7.3.1
|
|
@@ -762,25 +762,30 @@ def compute_vm_get_state(ctx: Configuration):
|
|
|
762
762
|
|
|
763
763
|
|
|
764
764
|
@compute_vm_get.command('stats', short_help='Performance statistics')
|
|
765
|
-
@click.argument(
|
|
765
|
+
@click.argument(
|
|
766
|
+
'kind', type=click.Choice(['memory', 'datastore', 'cpu', 'net', 'disk'])
|
|
767
|
+
)
|
|
768
|
+
@click.option(
|
|
769
|
+
'-i', '--interval', type=int, default=15, help='Interval in minutes'
|
|
770
|
+
)
|
|
766
771
|
@pass_context
|
|
767
|
-
def compute_vm_get_stats(ctx: Configuration, kind):
|
|
772
|
+
def compute_vm_get_stats(ctx: Configuration, kind: str, interval: int):
|
|
768
773
|
"""Get virtual machine memory, io, cpu and network performance statistics.
|
|
769
774
|
|
|
770
|
-
Choose between:
|
|
775
|
+
Choose between: disk, memory, cpu or net. For example:
|
|
771
776
|
|
|
772
777
|
vss-cli compute vm get <name-or-vm_id> stats memory
|
|
773
778
|
"""
|
|
774
|
-
lookup = {
|
|
775
|
-
'cpu': ctx.get_vm_performance_cpu,
|
|
776
|
-
'memory': ctx.get_vm_performance_memory,
|
|
777
|
-
'io': ctx.get_vm_performance_io,
|
|
778
|
-
'net': ctx.get_vm_performance_net,
|
|
779
|
-
}
|
|
780
|
-
|
|
781
779
|
if not ctx.is_powered_on_vm(ctx.moref):
|
|
782
780
|
raise VssCliError('Cannot perform operation in current power state')
|
|
783
|
-
|
|
781
|
+
# fetch performance stats
|
|
782
|
+
obj = ctx.request(
|
|
783
|
+
f'/vm/{ctx.moref}/performance', params={'interval': interval}
|
|
784
|
+
)
|
|
785
|
+
try:
|
|
786
|
+
obj = obj.get('data', {})[kind]
|
|
787
|
+
except KeyError:
|
|
788
|
+
raise VssCliError(f'Invalid kind: {kind}')
|
|
784
789
|
columns = ctx.columns or [(i,) for i in obj.keys()]
|
|
785
790
|
ctx.echo(format_output(ctx, [obj], columns=columns, single=True))
|
|
786
791
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vss-cli
|
|
3
|
-
Version: 2025.6.0.
|
|
3
|
+
Version: 2025.6.0.dev2
|
|
4
4
|
Summary: ITS Private Cloud CLI
|
|
5
5
|
Author-email: University of Toronto <vss-apps@eis.utoronto.ca>
|
|
6
6
|
Maintainer-email: vss-py@eis.utoronto.ca
|
|
@@ -34,7 +34,7 @@ Requires-Dist: jinja2>=2.10
|
|
|
34
34
|
Requires-Dist: dateparser==1.2.1
|
|
35
35
|
Requires-Dist: rich==13.9.4
|
|
36
36
|
Requires-Dist: pick==2.2.0
|
|
37
|
-
Requires-Dist: dataclasses-json==0.
|
|
37
|
+
Requires-Dist: dataclasses-json==0.6.7
|
|
38
38
|
Requires-Dist: validators==0.34.0
|
|
39
39
|
Requires-Dist: ruamel.yaml==0.17.21
|
|
40
40
|
Requires-Dist: qrcode==7.3.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
|
{vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/callbacks.py
RENAMED
|
File without changes
|
{vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/contentlib.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/compute_plugins/inventory.py
RENAMED
|
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
|
{vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/inventory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vss_cli-2025.6.0.dev0 → vss_cli-2025.6.0.dev2}/vss_cli/plugins/request_plugins/retirement.py
RENAMED
|
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
|