This repository contains utility scripts for backing up data from various sources.
- S3 Backup Tool: Back up data from one S3 bucket to another, with archiving and timestamping
- GitHub Backup Tool: Back up all repositories from a GitHub organization
- Pack Tool: Pack a folder into DAR archives and upload to S3
- Unpack Tool: Download archives from S3 and unpack them to a folder
- Clear Staging Tool: Safely delete staging directories
- Installation and Setup: Prerequisites, Python environment setup, and code structure
- Resumable Backups: How the checkpoint system works
- AWS Sync Settings: Recommended AWS configuration settings
python backup_s3.py [folder_name] --confirm
export GITHUB_TOKEN=your_github_personal_access_token
python backup_github.py <org_name> --confirm
By default, this creates DAR archives and uploads them to S3 with bucket name <org-name>-github-backups
.
python pack.py /path/to/folder --dest-bucket my-backups --confirm
python unpack.py /path/to/destination --s3-path s3://my-backups/packed_folders/folder_name/20250407_120000 --confirm
python clear_staging.py --folder <folder_name>
See the documentation in the docs directory for detailed usage information.