From 0f79e5e2895e0a222234356e7007e3d03a993447 Mon Sep 17 00:00:00 2001 From: Jan Fajerski Date: Wed, 14 Aug 2024 14:36:49 +0200 Subject: [PATCH] add scripts/get_module_version.sh This script consumes a Prometheus version (or version tag) and prints the appropriate module version. Signed-off-by: Jan Fajerski --- .github/workflows/ci.yml | 2 +- RELEASE.md | 2 +- scripts/get_module_version.sh | 24 ++++++++++++++++++++++++ 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100755 scripts/get_module_version.sh diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b9014e019..a4788da65 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -253,7 +253,7 @@ jobs: (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.')) || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v3.')) - run: ./scripts/ui_release.sh --check-package "$(echo ${{ github.ref_name }}|sed s/v2/v0/)" + run: ./scripts/ui_release.sh --check-package "$(./scripts/get_module_version.sh ${{ github.ref_name }})" - name: build run: make assets - name: Copy files before publishing libs diff --git a/RELEASE.md b/RELEASE.md index 0d3f7456c..53fdc4433 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -187,7 +187,7 @@ the Prometheus server, we use major version zero releases for the libraries. Tag the new library release via the following commands: ```bash -tag="v$(sed s/2/0/ < VERSION)" +tag="v$(./scripts/get_module_version.sh)" git tag -s "${tag}" -m "${tag}" git push origin "${tag}" ``` diff --git a/scripts/get_module_version.sh b/scripts/get_module_version.sh new file mode 100755 index 000000000..e38558704 --- /dev/null +++ b/scripts/get_module_version.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +# if no version string is passed as an argument, read VERSION file +if [ $# -eq 0 ]; then + VERSION="$(< VERSION)" +else + VERSION=$1 +fi + + +# Remove leading 'v' if present +VERSION="${VERSION#v}" + +# Extract MAJOR, MINOR, and REST +MAJOR="${VERSION%%.*}" +MINOR="${VERSION#*.}"; MINOR="${MINOR%%.*}" +REST="${VERSION#*.*.}" + +# Format and output based on MAJOR version +if [[ "$MAJOR" == "2" ]]; then + echo "0.$MINOR.$REST" +elif [[ "$MAJOR" == "3" ]]; then + printf "0.3%02d.$REST\n" "$MINOR" +fi