Add deployment yaml

This commit is contained in:
2026-05-19 00:35:03 +02:00
parent 9adfa18e9b
commit 1c69ae56ac
3 changed files with 65 additions and 10 deletions

View File

@@ -0,0 +1,57 @@
name: Deploy
on:
push:
branches:
- main
jobs:
deploy:
runs-on: spot
env:
COMPOSER_NO_INTERACTION: "1"
COMPOSER_HOME: .composer
DEPLOY_PATH: /var/www/spot
npm_config_cache: .npm-cache
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check runner tools
run: |
command -v composer
command -v npm
command -v rsync
- name: Check deploy path
run: |
test -d "$DEPLOY_PATH"
test -w "$DEPLOY_PATH"
- name: Validate Composer configuration
run: composer validate --no-check-publish
- name: Install PHP dependencies
run: composer install --no-dev --prefer-dist --optimize-autoloader
- name: Install npm dependencies
run: npm ci
- name: Build frontend
run: npm run prod
- name: Deploy to production
run: |
rsync -az --delete \
--exclude ".git/" \
--exclude ".gitea/" \
--exclude ".composer/" \
--exclude ".npm-cache/" \
--exclude "node_modules/" \
--exclude "config/settings.php" \
--exclude "files/" \
--exclude "geo/" \
--exclude "gaia/" \
./ "$DEPLOY_PATH/"