My own backup tool I used for a while. Project I used to learn Golang
|
|
||
|---|---|---|
| .github/workflows | ||
| config | ||
| Logging | ||
| SQL | ||
| StorageTypes | ||
| Tools | ||
| .gitignore | ||
| Compression.go | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| README.md | ||
Scabiosa Backup Tool
Please keep in mind that this project is WIP.
What can it do?
- Backup you stuff via a dynamic configuration (done!)
- Log the Backup progress to a database (planned)
- Upload the files to a remote storage of your choice (see Storage Types)
Database Types
- MariaDB (soon)
- MySQL (far future)
- MS-SQL (far future)
Storage types
- Local storage (soon)
- Azure Blob Storage (planned)
- Azure File Share (done!)
- S3 Bucket (far future)
- Dropbox (far future)
- OneDrive (far future)
- GDrive (far future)
| Storage Type | Config Type |
|---|---|
| Azure File Share | azure-fileshare |
Config Explaination
config.json
| Field | Type | Description |
|---|---|---|
| localBackupPath | string | Path where local backups are stored |
| sqlConfig | ---------------- | ---------------------------------------------- |
| sqlType | string | SQL Server Type (not yet used) |
| sql-address | string | Address to the SQL Server |
| sql-port | uint16 | SQL Server Port |
| database | string | Database name |
| db-user | string | SQL username from user which should be used |
| db-password | string | SQL password from user which should be used |
| foldersToBackup | ---------------- | ---------------------------------------------- |
| backupName | string | .bak file name |
| folderPath | string | Path to folder which should be backed up |
| storageType | string | See StorageTypes |
| createLocalBackup | boolean | Sets if .bak file should also be saved locally |