privatecoffee-website/.forgejo/workflows/build.yml
Kumi 7d23e465e2
fix(build): switch to container for build jobs
Replaces `runs-on` with `container` to utilize a Docker container
for node:20-bookworm. This enhances consistency and reproducibility
by standardizing the build environment across different runs.
2024-07-01 09:59:48 +02:00

51 lines
1.3 KiB
YAML

name: Build and Deploy Static Site
on:
push:
branches:
- static
jobs:
build:
container: node:20-bookworm
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install dependencies
run: |
apt update
apt install -y python3 python3-pip
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Generate static site
run: python main.py
- name: Deploy to pages branch
run: |
# Configure Git
git config --global user.name "Forgejo"
git config --global user.email "noreply@private.coffee"
# Move generated static site files to a temporary location
mv build ../static_site_temp
# Create a new orphan branch named 'pages'
git checkout --orphan pages
# Remove all files from the working directory
git rm -rf .
# Move the static site files back to the working directory
mv ../static_site_temp/* ./
mv ../static_site_temp/.* ./ 2>/dev/null || true
# Add and commit the static site files
git add .
git commit -m "Deploy static site"
# Force push to the 'pages' branch
git push origin pages --force