mirror of
https://github.com/freeedcom/ai-codereviewer.git
synced 2025-04-21 18:16:47 +00:00
39 lines
1.3 KiB
YAML
39 lines
1.3 KiB
YAML
name: S3 backup
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "0 6 * * *"
|
|
|
|
jobs:
|
|
s3-backup:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
|
with:
|
|
fetch-depth: 0 # retrieve all history
|
|
|
|
- name: Configure AWS credentials
|
|
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2
|
|
with:
|
|
aws-access-key-id: ${{ secrets.AWS_S3_BACKUP_ACCESS_KEY_ID }}
|
|
aws-secret-access-key: ${{ secrets.AWS_S3_BACKUP_SECRET_ACCESS_KEY }}
|
|
aws-region: ca-central-1
|
|
|
|
- name: Create ZIP bundle
|
|
run: |
|
|
ZIP_FILE=`basename ${{ github.repository }}`-`date '+%Y-%m-%d'`.zip
|
|
zip -rq "${ZIP_FILE}" .
|
|
mkdir -p ${{ github.repository }}
|
|
mv "${ZIP_FILE}" ${{ github.repository }}
|
|
|
|
- name: Upload to S3 bucket
|
|
run: |
|
|
aws s3 sync . s3://${{ secrets.AWS_S3_BACKUP_BUCKET }} --exclude='*' --include='${{ github.repository }}/*'
|
|
|
|
- name: Notify Slack channel if this job failed
|
|
if: ${{ failure() }}
|
|
run: |
|
|
json='{"text":"S3 backup failed in <https://github.com/${{ github.repository }}>!"}'
|
|
curl -X POST -H 'Content-type: application/json' --data "$json" ${{ secrets.SLACK_NOTIFY_WEBHOOK }}
|