Skip to content

feat: Add "Only Important" filter to Spell Cast icon type (#2412) #425

feat: Add "Only Important" filter to Spell Cast icon type (#2412)

feat: Add "Only Important" filter to Spell Cast icon type (#2412) #425

Workflow file for this run

name: Package Retail/Wrath/Classic
on:
push:
branches:
- master
tags:
- "*"
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: "Validate Version"
run: |
if [[ "$(grep -hroP '## Version.*' --exclude-dir=.release --include="*.toc" . | sort --unique | wc -l)" -gt 1 ]]; then
grep -rnP '## Version.*' --exclude-dir=.release --include="*.toc" . | cat
echo "More than 1 distinct ##Version found in .toc files." 1>&2
exit 1
fi;
- name: "Validate Changelog Version"
run: |
TOC_VERSION=$(grep -oP '## Version: \K[^\s]+' TellMeWhen.toc)
CHANGELOG_VERSION=$(grep -oP '## v\K[^\s]+' CHANGELOG.md | head -n1)
if [[ "$TOC_VERSION" != "$CHANGELOG_VERSION" ]]; then
echo "Version mismatch between TOC and CHANGELOG:" 1>&2
echo " TOC Version: '$TOC_VERSION'" 1>&2
echo " Changelog Version: '$CHANGELOG_VERSION'" 1>&2
exit 1
fi
echo "✓ TOC version ($TOC_VERSION) matches CHANGELOG version"
- name: "Validate Version Not Duplicate"
run: |
TOC_VERSION=$(grep -oP '## Version: \K[^\s]+' TellMeWhen.toc)
LATEST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "none")
# Check if we're building a tag
if [[ "$GITHUB_REF" == refs/tags/* ]]; then
CURRENT_TAG="${GITHUB_REF#refs/tags/}"
echo "✓ Building tag: $CURRENT_TAG"
else
# Not building a tag - verify version was bumped
if [[ "$TOC_VERSION" == "$LATEST_TAG" ]]; then
echo "Version not bumped after release!" 1>&2
echo " TOC Version: $TOC_VERSION" 1>&2
echo " Latest Tag: $LATEST_TAG" 1>&2
echo " Please bump the version in TOC and CHANGELOG before pushing to master." 1>&2
exit 1
fi
echo "✓ TOC version ($TOC_VERSION) is different from latest tag ($LATEST_TAG)"
fi
- name: "Validate TOC Classic"
run: |
if [[ "$(grep -hroP '## X?-?\KInterface.*' --exclude-dir=.release --include="*-Classic.toc" . | sort --unique | wc -l)" -gt 1 ]]; then
grep -rnP '## X?-?\KInterface.*' --exclude-dir=.release --include="*-Classic.toc" . | cat
echo "More than 1 distinct ##Interface version found in .toc files." 1>&2
exit 1
fi;
- name: "Validate TOC Wrath"
run: |
if [[ "$(grep -hroP '## X?-?\KInterface.*' --exclude-dir=.release --include="*-Wrath.toc" . | sort --unique | wc -l)" -gt 1 ]]; then
grep -rnP '## X?-?\KInterface.*' --exclude-dir=.release --include="*-Wrath.toc" . | cat
echo "More than 1 distinct ##Interface version found in .toc files." 1>&2
exit 1
fi;
- name: "Validate TOC Retail"
run: |
if [[ "$(grep -hroP '## X?-?\KInterface.*' --exclude-dir=.release --include="TellMeWhen.toc" --include="TellMeWhen_Options.toc" . | sort --unique | wc -l)" -gt 1 ]]; then
grep -rnP '## X?-?\KInterface.*' --exclude-dir=.release --include="TellMeWhen.toc" --include="TellMeWhen_Options.toc" . | cat
echo "More than 1 distinct ##Interface version found in .toc files." 1>&2
exit 1
fi;
- name: "Check for Debugging Code"
run: |
if grep -rnE '\b(printstack|wlp)\s*\(' --exclude-dir=.release --exclude-dir=.git --include="*.lua" .; then
echo "Found debugging code (printstack or wlp calls) in the codebase." 1>&2
exit 1
fi
- name: "Build In-Game Changelog"
run: sudo chmod +x ./build/create-lua-changelog.sh && ./build/create-lua-changelog.sh
- name: "Build Short Changelog"
run: sudo chmod +x ./build/create-short-changelog.sh && ./build/create-short-changelog.sh
- name: Create Package
uses: BigWigsMods/packager@master
env:
CF_API_KEY: ${{ secrets.CF_API_KEY }}
WOWI_API_TOKEN: ${{ secrets.WOWI_API_TOKEN }}
WAGO_API_TOKEN: ${{ secrets.WAGO_API_TOKEN }}
GITHUB_OAUTH: ${{ secrets.GITHUB_TOKEN }}