Actualizar .gitea/workflows/backup.yaml

This commit is contained in:
2026-03-18 14:13:13 +00:00
parent 808c0770d8
commit 735202096c
+35 -18
View File
@@ -5,38 +5,55 @@ on:
branches: [ main ] branches: [ main ]
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: '0 0 * * *' # Runs every day at midnight - cron: '0 0 * * *'
jobs: jobs:
run_db_backup: run_db_backup:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions:
contents: write
env: env:
SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_DESARROLLO_ACCESS_TOKEN }} SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_DESARROLLO_ACCESS_TOKEN }}
SUPABASE_PROJECT_ID: ${{ secrets.SUPABASE_DESARROLLO_PROJECT_ID }} SUPABASE_PROJECT_ID: ${{ secrets.SUPABASE_DESARROLLO_PROJECT_ID }}
# MinIO / S3 config
AWS_ACCESS_KEY_ID: ${{ secrets.MINIO_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.MINIO_SECRET_KEY }}
AWS_DEFAULT_REGION: us-east-1
S3_ENDPOINT: ${{ secrets.MINIO_ENDPOINT }} # ej: http://minio:9000
S3_BUCKET: ${{ secrets.MINIO_BUCKET }}
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
# Si es un PR, usa la rama origen. Si no, usa la rama que disparó el evento (main).
ref: ${{ github.head_ref || github.ref }} ref: ${{ github.head_ref || github.ref }}
- uses: supabase/setup-cli@v1 - uses: supabase/setup-cli@v1
with: with:
version: latest version: latest
- name: Link Project - name: Link Project
run: supabase link --project-ref $SUPABASE_PROJECT_ID run: supabase link --project-ref $SUPABASE_PROJECT_ID
- name: Backup roles
run: supabase db dump -f supabase/roles.sql --role-only
- name: Backup schema
run: supabase db dump -f supabase/schema.sql
- name: Backup data
run: supabase db dump -f supabase/data.sql --data-only --use-copy
- uses: stefanzweifel/git-auto-commit-action@v5 - name: Create backup directory
with: run: mkdir -p backup
commit_message: Supabase backup
- name: Backup roles
run: supabase db dump -f backup/roles.sql --role-only
- name: Backup schema
run: supabase db dump -f backup/schema.sql
- name: Backup data
run: supabase db dump -f backup/data.sql --data-only --use-copy
- name: Install AWS CLI
run: |
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
- name: Upload to MinIO (S3)
run: |
TIMESTAMP=$(date +'%Y-%m-%d_%H-%M-%S')
aws --endpoint-url $S3_ENDPOINT s3 cp backup/ s3://$S3_BUCKET/$TIMESTAMP/ --recursive