mirror of
https://github.com/pdfme/pdfme.git
synced 2026-02-20 07:47:16 -05:00
30 lines
945 B
Bash
Executable File
30 lines
945 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Extract the latest tag name
|
|
LATEST_TAG=$(git describe --tags --abbrev=0)
|
|
|
|
# Extract the base version and pre-release identifier from the latest tag
|
|
if [[ $LATEST_TAG =~ ([0-9]+\.[0-9]+\.[0-9]+)(-(alpha|beta|rc)\.([0-9]+))? ]]; then
|
|
BASE_VERSION=${BASH_REMATCH[1]}
|
|
PRE_ID=${BASH_REMATCH[3]}
|
|
PRE_NUM=${BASH_REMATCH[4]}
|
|
else
|
|
echo "Error: Unable to parse the latest tag name." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Determine the dev iteration number based on the commit count since the last tag
|
|
DEV_ITERATION=$(git rev-list ${LATEST_TAG}..HEAD --count)
|
|
|
|
# Construct the new version string
|
|
if [[ -n $PRE_ID ]]; then
|
|
# If there is a pre-release identifier (alpha, beta, rc)
|
|
NEW_VERSION="${BASE_VERSION}-${PRE_ID}.${PRE_NUM}-dev.${DEV_ITERATION}"
|
|
else
|
|
# If there is no pre-release identifier
|
|
NEW_VERSION="${BASE_VERSION}-dev.${DEV_ITERATION}"
|
|
fi
|
|
|
|
# Output the new version string
|
|
echo "VERSION=$NEW_VERSION" >> $GITHUB_ENV
|