fix(ci): replace non-ASCII chars in auto-release.yml #57

Merged
jmiller merged 2 commits from dev into main 2026-05-24 04:30:01 +00:00
+16 -16
View File
@@ -98,7 +98,7 @@ jobs:
run: |
VERSION=$(php /tmp/moko-platform-api/cli/version_read.php --path . 2>/dev/null)
if [ -z "$VERSION" ]; then
echo "No VERSION in README.md skipping release"
echo "No VERSION in README.md -- skipping release"
echo "skip=true" >> "$GITHUB_OUTPUT"
exit 0
fi
@@ -118,10 +118,10 @@ jobs:
echo "skip=false" >> "$GITHUB_OUTPUT"
if [ "$PATCH" = "00" ] || [ "$PATCH" = "01" ]; then
echo "is_minor=true" >> "$GITHUB_OUTPUT"
echo "Version: $VERSION (first release for this minor full pipeline)"
echo "Version: $VERSION (first release for this minor -- full pipeline)"
else
echo "is_minor=false" >> "$GITHUB_OUTPUT"
echo "Version: $VERSION (patch platform version + badges only)"
echo "Version: $VERSION (patch -- platform version + badges only)"
fi
# -- STEP 1b: Bump minor version (stable = minor bump, reset patch) ------
@@ -145,7 +145,7 @@ jobs:
VERSION=$(printf "%02d.%02d.00" $MAJOR $MINOR)
TODAY=$(date +%Y-%m-%d)
echo "Stable bump: ${CURRENT} ${VERSION} (minor)"
echo "Stable bump: ${CURRENT} -> ${VERSION} (minor)"
# Update README.md
sed -i "s/VERSION:[[:space:]]*${CURRENT}/VERSION: ${VERSION}/" README.md
@@ -168,7 +168,7 @@ jobs:
if [ -n "$SUB_VER" ]; then
sed -i "s|<version>${SUB_VER}</version>|<version>${VERSION}</version>|" "$SUB_MANIFEST"
sed -i "s|<creationDate>[^<]*</creationDate>|<creationDate>${TODAY}</creationDate>|" "$SUB_MANIFEST"
echo " Bumped sub-extension: $(basename $SUB_MANIFEST) ${SUB_VER} ${VERSION}"
echo " Bumped sub-extension: $(basename $SUB_MANIFEST) ${SUB_VER} -> ${VERSION}"
fi
done
fi
@@ -197,7 +197,7 @@ jobs:
git remote set-url origin "https://jmiller:${{ secrets.GA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git"
git add -A
git diff --cached --quiet || {
git commit -m "chore(version): bump ${CURRENT} ${VERSION} [skip ci]"
git commit -m "chore(version): bump ${CURRENT} -> ${VERSION} [skip ci]"
git push origin HEAD:main 2>&1
}
@@ -221,7 +221,7 @@ jobs:
echo "tag_exists=$TAG_EXISTS" >> "$GITHUB_OUTPUT"
echo "branch_exists=$BRANCH_EXISTS" >> "$GITHUB_OUTPUT"
# Tag and branch may persist across patch releases never skip
# Tag and branch may persist across patch releases -- never skip
echo "already_released=false" >> "$GITHUB_OUTPUT"
# -- SANITY CHECKS -------------------------------------------------------
@@ -316,13 +316,13 @@ jobs:
echo "" >> $GITHUB_STEP_SUMMARY
if [ "$ERRORS" -gt 0 ]; then
echo "**${ERRORS} error(s) release may be incomplete**" >> $GITHUB_STEP_SUMMARY
echo "**${ERRORS} error(s) -- release may be incomplete**" >> $GITHUB_STEP_SUMMARY
else
echo "**All sanity checks passed**" >> $GITHUB_STEP_SUMMARY
fi
# -- STEP 2: Create or update version/XX.YY archive branch ---------------
# Always runs every version change on main archives to version/XX.YY
# Always runs -- every version change on main archives to version/XX.YY
- name: "Step 2: Version archive branch"
if: steps.check.outputs.already_released != 'true'
run: |
@@ -378,11 +378,11 @@ jobs:
MANIFEST=$(find ./src -maxdepth 1 -name "pkg_*.xml" -exec grep -l '<extension' {} \; 2>/dev/null | head -1)
[ -z "$MANIFEST" ] && MANIFEST=$(find . -maxdepth 2 -name "*.xml" ! -path "*/packages/*" -exec grep -l '<extension' {} \; 2>/dev/null | head -1)
if [ -z "$MANIFEST" ]; then
echo "Warning: No Joomla XML manifest found skipping updates.xml" >> $GITHUB_STEP_SUMMARY
echo "Warning: No Joomla XML manifest found -- skipping updates.xml" >> $GITHUB_STEP_SUMMARY
exit 0
fi
# Extract fields using sed (portable no grep -P)
# Extract fields using sed (portable -- no grep -P)
EXT_NAME=$(sed -n 's/.*<name>\([^<]*\)<\/name>.*/\1/p' "$MANIFEST" | head -1)
EXT_TYPE=$(sed -n 's/.*<extension[^>]*type="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1)
EXT_ELEMENT=$(sed -n 's/.*<element>\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" | head -1)
@@ -628,7 +628,7 @@ jobs:
"${API_BASE}/releases/tags/${RELEASE_TAG}" 2>/dev/null || true)
RELEASE_ID=$(echo "$RELEASE_JSON" | python3 -c "import sys,json; print(json.load(sys.stdin).get('id',''))" 2>/dev/null || true)
if [ -z "$RELEASE_ID" ]; then
echo "No release ${RELEASE_TAG} found skipping ZIP upload"
echo "No release ${RELEASE_TAG} found -- skipping ZIP upload"
exit 0
fi
@@ -663,7 +663,7 @@ jobs:
# -- Build install packages from src/ ----------------------------
SOURCE_DIR="src"
[ ! -d "$SOURCE_DIR" ] && SOURCE_DIR="htdocs"
[ ! -d "$SOURCE_DIR" ] && { echo "No src/ or htdocs/ skipping package"; exit 0; }
[ ! -d "$SOURCE_DIR" ] && { echo "No src/ or htdocs/ -- skipping package"; exit 0; }
EXCLUDES=".ftpignore sftp-config* *.ppk *.pem *.key .env*"
@@ -787,7 +787,7 @@ jobs:
--author="gitea-actions[bot] <gitea-actions[bot]@mokoconsulting.tech>" || true
git push || true
# Sync updates.xml to main via direct API (always runs may be on version/XX branch)
# Sync updates.xml to main via direct API (always runs -- may be on version/XX branch)
GA_TOKEN="${{ secrets.GA_TOKEN }}"
API="${GITEA_URL:-https://git.mokoconsulting.tech}/api/v1/repos/${{ github.repository }}"
@@ -950,7 +950,7 @@ jobs:
|| echo "WARNING: GitHub mirror push failed"
# -- Clean up lesser pre-releases (cascade) ---------------------------------
# stable deletes all | rc beta,alpha,dev | beta alpha,dev | alpha dev
# stable -> deletes all | rc -> beta,alpha,dev | beta -> alpha,dev | alpha -> dev
- name: "Delete lesser pre-release channels"
if: steps.version.outputs.skip != 'true'
continue-on-error: true
@@ -1031,7 +1031,7 @@ jobs:
echo "## Release Skipped" >> $GITHUB_STEP_SUMMARY
echo "No VERSION in README.md" >> $GITHUB_STEP_SUMMARY
elif [ "${{ steps.check.outputs.already_released }}" = "true" ]; then
echo "## Already Released ${VERSION}" >> $GITHUB_STEP_SUMMARY
echo "## Already Released -- ${VERSION}" >> $GITHUB_STEP_SUMMARY
else
echo "" >> $GITHUB_STEP_SUMMARY
echo "## Build & Release Complete (${PLATFORM})" >> $GITHUB_STEP_SUMMARY