Guest User

Untitled

a guest
Jun 5th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. #!/bin/bash
  2. set -e
  3.  
  4. # Database credentials
  5. PG_HOST=$RDS_HOSTNAME
  6. PG_PORT=$RDS_PORT
  7. PG_DB_NAME=$RDS_DB_NAME
  8. PG_USERNAME=$RDS_USERNAME
  9. export PGPASSWORD=$RDS_PASSWORD
  10.  
  11. #aws cli uses these env variables, export them
  12. export AWS_DEFAULT_REGION="us-west-2"
  13. export AWS_ACCESS_KEY_ID=$AWS_DB_BACKUP_MANAGER_API_KEY
  14. export AWS_SECRET_ACCESS_KEY=$AWS_DB_BACKUP_MANAGER_API_SECRET
  15.  
  16. # S3
  17. S3_DIR="db-backups-element/$ELEMENT_ENV/$(date +"%Y-wk%V")"
  18.  
  19. # Vars
  20. NOW=$(date +"%Y-%m-%d-at-%H-%M-%S")
  21. SQL_FILENAME="$PG_DB_NAME"-"$NOW".sql
  22.  
  23. # Dump database
  24. echo "Copying data to /tmp/$SQL_FILENAME"
  25. pg_dump -c -h $PG_HOST -U $PG_USERNAME $PG_DB_NAME > /tmp/$SQL_FILENAME
  26.  
  27. # Copy to S3
  28. echo "Uploading to s3://$S3_DIR"
  29. aws s3 cp /tmp/$SQL_FILENAME s3://$S3_DIR/$SQL_FILENAME --sse aws:kms --sse-kms-key-id $KMS_KEY_ID --storage-class STANDARD_IA --region us-west-2
  30.  
  31. # Delete local file
  32. echo "Removing tmp files"
  33. rm /tmp/$SQL_FILENAME
Add Comment
Please, Sign In to add comment