feat: infer version from manifest on main branch #25

Merged
Copilot merged 2 commits from copilot/infer-version-from-manifest into main 2026-01-03 23:05:17 +00:00

View File

@@ -100,6 +100,37 @@ jobs:
fi
if [ "${EVENT_NAME}" = "workflow_dispatch" ]; then
# Check if REF_NAME is main or matches version pattern
if [ "${REF_NAME}" = "main" ]; then
# Infer version from manifest when on main branch
SCRIPT_LIB_DIR="${GITHUB_WORKSPACE}/scripts/lib"
if [ ! -f "${SCRIPT_LIB_DIR}/joomla_manifest.sh" ]; then
echo "ERROR: Cannot find joomla_manifest.sh library" >> "${GITHUB_STEP_SUMMARY}"
exit 1
fi
# Source the library functions
. "${SCRIPT_LIB_DIR}/joomla_manifest.sh"
# Find and extract version from manifest
MANIFEST="$(find_manifest "${GITHUB_WORKSPACE}/src")"
VERSION="$(get_manifest_version "${MANIFEST}")"
if [ -z "${VERSION}" ]; then
echo "ERROR: Failed to extract version from manifest: ${MANIFEST}" >> "${GITHUB_STEP_SUMMARY}"
exit 1
fi
echo "Inferred version ${VERSION} from manifest on main branch" >> "${GITHUB_STEP_SUMMARY}"
SOURCE_BRANCH="${REF_NAME}"
SOURCE_PREFIX="main"
TARGET_BRANCH="version/${VERSION}"
PROMOTED_BRANCH="version/${VERSION}"
CHANNEL="stable"
RELEASE_MODE="stable"
else
# Extract version from branch name (dev/XX.XX.XX or rc/XX.XX.XX)
echo "${REF_NAME}" | grep -E '^(dev|rc)/[0-9]+[.][0-9]+[.][0-9]+$' >/dev/null
SOURCE_BRANCH="${REF_NAME}"
@@ -117,6 +148,7 @@ jobs:
CHANNEL="stable"
RELEASE_MODE="stable"
fi
fi
if [ "${OVERRIDE}" = "rc" ]; then
CHANNEL="rc"