world-game/.forgejo/workflows/deploy-prod.yml

41 lines
1.2 KiB
YAML
Raw Normal View History

name: Deploy Production
2026-01-14 14:12:32 +01:00
on:
push:
branches:
- main
jobs:
deploy:
name: Deploy to Production
runs-on: docker
container:
image: forgejo-ci-node:latest
2026-01-14 14:12:32 +01:00
steps:
- name: Checkout code
run: |
git clone --depth 1 --branch main https://forge.studio-variable.com/${{ github.repository }}.git .
- name: Build Svelte app
run: |
npm ci
npm run build
2026-01-14 14:12:32 +01:00
- name: Deploy via FTP
env:
USERNAME: ${{ secrets.USERNAME }}
PASSWORD: ${{ secrets.PASSWORD }}
HOST: ${{ secrets.PRODUCTION_HOST }}
2026-01-14 14:12:32 +01:00
run: |
apt-get update -qq && apt-get install -y -qq lftp
cat > /tmp/lftp-script.txt <<SCRIPT
set ftp:ssl-allow no
open -u $USERNAME,$PASSWORD $HOST
2026-01-14 14:12:32 +01:00
mirror --reverse --verbose --ignore-time --parallel=10 -x local/ assets assets
mirror --reverse --verbose --ignore-time --parallel=10 -x accounts/ -x cache/ -x sessions/ site site
mirror --reverse --verbose --ignore-time --parallel=10 kirby kirby
mirror --reverse --verbose --ignore-time --parallel=10 vendor vendor
quit
SCRIPT
lftp -f /tmp/lftp-script.txt