rexforge/generate_version.sh
2025-01-28 11:08:52 +01:00

22 lines
711 B
Bash

#!/bin/bash
if [ -z "$1" ]; then
echo "ERROR: No version file name provided. Usage: $0 <version_file>"
exit 1
fi
VERSION_FILE="$1"
if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
VERSION=$(git describe 2>/dev/null || git rev-parse --short HEAD || echo "v0.0.0-unknown")
DIRTY=$(git diff-index --quiet HEAD -- || echo "-dirty")
FULL_VERSION="${VERSION}${DIRTY}"
echo "$FULL_VERSION" >"$VERSION_FILE"
else
if [ -f "$VERSION_FILE" ]; then
echo "INFO: $VERSION_FILE already exists. Please update it manually if needed."
else
echo "ERROR: Not in a Git repository, and $VERSION_FILE does not exist. Unable to generate version!"
exit 1
fi
fi