52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
name: Obfuscate Main Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
obfuscate:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Skip loop commits
|
|
run: |
|
|
msg="$(git log -1 --pretty=%B)"
|
|
echo "Last commit message: $msg"
|
|
if echo "$msg" | grep -q "\[skip ci\]"; then
|
|
echo "Skip CI commit detected."
|
|
exit 0
|
|
fi
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.12"
|
|
|
|
- name: Setup Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "20"
|
|
|
|
- name: Run release obfuscation
|
|
run: python scripts/obfuscate_release.py --root . --hash-assets
|
|
|
|
- name: Commit obfuscated build
|
|
run: |
|
|
git config user.name "gitea-actions"
|
|
git config user.email "actions@local"
|
|
git add -A
|
|
if git diff --cached --quiet; then
|
|
echo "No build changes to commit."
|
|
exit 0
|
|
fi
|
|
git commit -m "chore(release): obfuscate and hash production assets [skip ci]"
|
|
git push
|