Backup databases to an S3 bucket.
- Create a new workflow file
.github/workflows/backup-databases.yml
- Add the following:
name: Backup Databases
on:
push:
branches:
- main
schedule:
- cron: 0 */12 * * *
jobs:
backup-databases:
runs-on: ubuntu-latest
steps:
- name: Backup Databses
uses: finer-vision/[email protected]
with:
DB_USER: ${{ secrets.UAT_DB_USER }}
DB_PASSWORD: ${{ secrets.UAT_DB_PASSWORD }}
DB_HOST: ${{ secrets.UAT_DB_HOST }}
S3_BUCKET_NAME: ${{ secrets.S3_BUCKET_NAME }}
S3_FOLDER: ${{ secrets.UAT_S3_FOLDER }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ secrets.AWS_REGION }}
- Create secrets in your repo's settings
- Push to your
main
branch to trigger a first run
Note: workflow scheduling only works when the workflow has been pushed to
main
and run successfully once. Also note, the scheduling isn't completely reliable