Scrum4Me/.github/workflows/neon-backup.yml

38 lines
958 B
YAML

name: Daily Neon Database Backup
on:
schedule:
# Elke nacht om 02:00 UTC = 04:00 Nederlandse zomertijd / 03:00 wintertijd
- cron: "0 2 * * *"
# Hiermee kun je handmatig testen via GitHub
workflow_dispatch:
jobs:
backup:
runs-on: ubuntu-latest
steps:
- name: Install PostgreSQL client
run: |
sudo apt-get update
sudo apt-get install -y postgresql-client
- name: Create backup
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: |
mkdir -p backups
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
pg_dump "$DATABASE_URL" \
--format=custom \
--no-owner \
--no-privileges \
--file="backups/neon-backup-$DATE.dump"
- name: Upload backup artifact
uses: actions/upload-artifact@v4
with:
name: neon-database-backup
path: backups/*.dump
retention-days: 30