Skip to content

Commit ca81ffa

Browse files
committed
Implementing hyp version command
1 parent f747815 commit ca81ffa

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

src/sagemaker/hyperpod/cli/hyp_cli.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import subprocess
66
from pydantic import BaseModel, ValidationError, Field
77
from typing import Optional
8+
from importlib.metadata import version, PackageNotFoundError
89

910
from sagemaker.hyperpod.cli.commands.cluster import list_cluster, set_cluster_context, get_cluster_context, \
1011
get_monitoring
@@ -35,7 +36,29 @@
3536
)
3637

3738

39+
def get_package_version(package_name):
40+
try:
41+
return version(package_name)
42+
except PackageNotFoundError:
43+
return "Not installed"
44+
45+
def print_version(ctx, param, value):
46+
if not value or ctx.resilient_parsing:
47+
return
48+
49+
hyp_version = get_package_version("sagemaker-hyperpod")
50+
pytorch_template_version = get_package_version("hyperpod-pytorch-job-template")
51+
custom_inference_version = get_package_version("hyperpod-custom-inference-template")
52+
jumpstart_inference_version = get_package_version("hyperpod-jumpstart-inference-template")
53+
54+
click.echo(f"hyp version: {hyp_version}")
55+
click.echo(f"hyperpod-pytorch-job-template version: {pytorch_template_version}")
56+
click.echo(f"hyperpod-custom-inference-template version: {custom_inference_version}")
57+
click.echo(f"hyperpod-jumpstart-inference-template version: {jumpstart_inference_version}")
58+
ctx.exit()
59+
3860
@click.group()
61+
@click.option('--version', is_flag=True, callback=print_version, expose_value=False, is_eager=True, help='Show version information')
3962
def cli():
4063
pass
4164

0 commit comments

Comments
 (0)