From 969517f910ab9f45bca8a7e48c1b44cbbdb2b4cb Mon Sep 17 00:00:00 2001 From: zhuwenxing Date: Fri, 16 Jun 2023 16:34:39 +0800 Subject: [PATCH] [skip e2e]add script to get chart version by app version (#24954) Signed-off-by: zhuwenxing --- .../get_helm_chart_version_by_app_version.py | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tests/scripts/get_helm_chart_version_by_app_version.py diff --git a/tests/scripts/get_helm_chart_version_by_app_version.py b/tests/scripts/get_helm_chart_version_by_app_version.py new file mode 100644 index 000000000..fe2f170ef --- /dev/null +++ b/tests/scripts/get_helm_chart_version_by_app_version.py @@ -0,0 +1,29 @@ +import subprocess +import json +def get_chart_version(repo = "milvus/milvus", app_version="2.2.0"): + """ + Get helm chart version by app version + """ + cmd = f"helm search repo {repo} -l -o json" + result = subprocess.check_output(cmd, shell=True) + result = json.loads(result) + all_chart_versions = [] + for item in result: + if item["app_version"] == app_version: + all_chart_versions.append(item["version"]) + if len(all_chart_versions) == 0: + raise Exception(f"Cannot find helm chart version for app version {app_version}") + all_chart_versions.sort() + result = all_chart_versions[-1] + return result + +if __name__ == "__main__": + import argparse + parser = argparse.ArgumentParser(description="Get helm charts version by app version") + parser.add_argument("--app-version", type=str, default="2.2.0", help="app version") + parser.add_argument("--repo", type=str, default="milvus/milvus", help="helm repo") + args = parser.parse_args() + repo = args.repo + app_version = args.app_version + chart_version = get_chart_version(repo=repo, app_version=app_version) + print(chart_version) \ No newline at end of file -- GitLab