Skip to content

Commit 862dc4b

Browse files
committed
Major.minor as argument
1 parent 685552c commit 862dc4b

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

test/bin/common_versions_verify.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ if ! git diff --exit-code "${SCENARIO_BUILD_BRANCH}^1...HEAD" "${ROOTDIR}/test/b
1313
"${ROOTDIR}/scripts/pyutils/create-venv.sh"
1414

1515
if [ "${SCENARIO_BUILD_BRANCH}" == "main" ]; then
16-
y=$(awk -F'[ .]' '{print $4}' < "${ROOTDIR}/Makefile.version.x86_64.var")
16+
y=$(awk -F'[ .]' '{print $3 "." $4}' < "${ROOTDIR}/Makefile.version.x86_64.var")
1717
else
18-
y=$(echo "${SCENARIO_BUILD_BRANCH}" | awk -F'[-.]' '{ print $3 }')
18+
y=$(echo "${SCENARIO_BUILD_BRANCH}" | awk -F'[-]' '{ print $2 }')
1919
fi
2020

2121
"${ROOTDIR}/_output/pyutils/bin/python" \

test/bin/pyutils/generate_common_versions.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
ARCH = os.uname().machine
2020

2121
# Version map defining the last minor version for each major version.
22-
# Used for cross-major Y-1/Y-2 calculations (e.g., 5.0's Y-1 is 4.18).
22+
# Used for cross-major Y-1/Y-2 calculations (e.g., 5.0's Y-1 is 4.22).
2323
VERSION_MAP = {
2424
4: {'last_minor': 22}
2525
}
@@ -393,17 +393,23 @@ def generate_common_versions(major_version, minor_version):
393393

394394

395395
def main():
396+
def parse_major_minor(value: str):
397+
parts = value.split(".")
398+
if len(parts) != 2 or not all(p.isdigit() for p in parts):
399+
raise argparse.ArgumentTypeError("version must be in 'X.Y' format")
400+
return int(parts[0]), int(parts[1])
401+
396402
parser = argparse.ArgumentParser(description="Generate common_versions.sh variables.")
397-
parser.add_argument("--major", type=int, default=4, help="The major version number (default: 4).")
398-
parser.add_argument("minor", type=int, help="The minor version number.")
403+
parser.add_argument("version", type=parse_major_minor, help="The major.minor version number.")
399404
parser.add_argument("--update-file", default=False, action="store_true", help="Update test/bin/common_versions.sh file.")
400405
parser.add_argument("--create-pr", default=False, action="store_true",
401406
help=("Commit the changes to a new branch, push it to the openshift/microshift, and create a pull request." +
402407
"Implies --update-file. Expects following env vars to be set: ORG, REPO, GH_TOKEN or APP_ID and KEY"))
403408
parser.add_argument("--dry-run", default=False, action="store_true", help="Dry run")
404409
args = parser.parse_args()
405410

406-
output = generate_common_versions(args.major, args.minor)
411+
major, minor = args.version
412+
output = generate_common_versions(major, minor)
407413

408414
if args.update_file or args.create_pr:
409415
logging.info("Updating test/bin/common_versions.sh file")

0 commit comments

Comments
 (0)