web/.github/workflows/build.yml
tenkuma c011eacfa7
Some checks failed
Build Eleventy / build (push) Failing after 4m31s
Update .github/workflows/build.yml
2026-05-13 21:56:24 -03:00

69 lines
No EOL
1.7 KiB
YAML

name: Build Eleventy
on:
push:
branches:
- main
paths-ignore:
- 'maintenance/**'
- 'README.md'
pull_request:
paths-ignore:
- 'maintenance/**'
- 'README.md'
workflow_dispatch:
jobs:
build:
runs-on:
- arch-linux
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "24"
- name: Install dependencies
run: npm ci
- name: Build site
run: npm run build
- name: Publish to forgejo-pages
if: github.ref == 'refs/heads/main'
env:
TOKEN: ${{ secrets.GITHUB_TOKEN }}
REPO_URL: ${{ github.server_url }}/${{ github.repository }}.git
run: |
git config --global user.name "Forgejo Actions"
git config --global user.email "actions@localhost"
# Clone repository
git clone "https://oauth2:${TOKEN}@${REPO_URL#https://}" deploy
cd deploy
# Checkout or create forgejo-pages
git fetch origin forgejo-pages || true
if git ls-remote --exit-code --heads origin forgejo-pages >/dev/null 2>&1; then
git checkout -B forgejo-pages origin/forgejo-pages
else
git checkout --orphan forgejo-pages
git rm -rf . || true
fi
# Remove old files
find . -mindepth 1 -maxdepth 1 ! -name .git -exec rm -rf {} +
# Copy new site
cp -a ../docs/. .
# Commit and push if changed
git add -A
if ! git diff --cached --quiet; then
git commit -m "Deploy ${GITHUB_SHA}"
git push origin forgejo-pages
fi