370 lines
7.8 KiB
JSON
370 lines
7.8 KiB
JSON
{
|
|
"version": 4,
|
|
"instance": "falcon",
|
|
"hooks": [
|
|
{
|
|
"id": "mattermost-notifications",
|
|
"conditions": ["*"],
|
|
"actionShoutrrr": {
|
|
"shoutrrrUrl": "mattermost://mattermost.pivoine.art/nxsqk4x86jr9bgniheaksem8qy",
|
|
"template": "Backrest notification:\n{{if .Task.Op.OperationBackup}}Backup {{.Plan.Id}} - {{.Status}}{{end}}{{if .Task.Op.OperationPrune}}Prune {{.Repo.Id}} - {{.Status}}{{end}}{{if .Task.Op.OperationCheck}}Check {{.Repo.Id}} - {{.Status}}{{end}}\n{{if .Error}}Error: {{.Error}}{{end}}"
|
|
}
|
|
}
|
|
],
|
|
"repos": [
|
|
{
|
|
"id": "hidrive-backup",
|
|
"uri": "/repos",
|
|
"password": "falcon-backup-2025",
|
|
"autoUnlock": true,
|
|
"autoInitialize": true,
|
|
"prunePolicy": {
|
|
"schedule": {
|
|
"cron": "0 2 * * 0"
|
|
}
|
|
},
|
|
"checkPolicy": {
|
|
"schedule": {
|
|
"cron": "0 3 * * 0"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"plans": [
|
|
{
|
|
"id": "postgres-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/core_postgres_data"],
|
|
"schedule": {
|
|
"cron": "0 2 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "redis-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/core_redis_data"],
|
|
"schedule": {
|
|
"cron": "0 3 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "directus-uploads-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/directus_uploads"],
|
|
"schedule": {
|
|
"cron": "0 4 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "directus-bundle-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/directus_bundle"],
|
|
"schedule": {
|
|
"cron": "0 4 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "awesome-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/awesome_data"],
|
|
"schedule": {
|
|
"cron": "0 5 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "mattermost-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/mattermost_config",
|
|
"/volumes/mattermost_data",
|
|
"/volumes/mattermost_plugins"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 5 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "tandoor-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/tandoor_staticfiles",
|
|
"/volumes/tandoor_mediafiles"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 5 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "scrapy-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/scrapyd_data",
|
|
"/volumes/scrapy_code"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 6 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "n8n-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/n8n_data"],
|
|
"schedule": {
|
|
"cron": "0 6 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "filestash-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/filestash_data"],
|
|
"schedule": {
|
|
"cron": "0 7 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "linkwarden-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/linkwarden_data",
|
|
"/volumes/linkwarden_meili_data"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 7 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "letsencrypt-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/letsencrypt_data"],
|
|
"schedule": {
|
|
"cron": "0 8 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 12,
|
|
"yearly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "vaultwarden-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/vaultwarden_data"],
|
|
"schedule": {
|
|
"cron": "0 8 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 12,
|
|
"yearly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "joplin-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/joplin_data"],
|
|
"schedule": {
|
|
"cron": "0 2 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "jellyfin-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/jelly_config"],
|
|
"schedule": {
|
|
"cron": "0 9 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "netdata-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/netdata_config"],
|
|
"schedule": {
|
|
"cron": "0 10 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 3
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "ai-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/ai_postgres_data",
|
|
"/volumes/ai_webui_data",
|
|
"/volumes/ai_crawl4ai_data"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 3 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "asciinema-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": ["/volumes/asciinema_data"],
|
|
"schedule": {
|
|
"cron": "0 11 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "gitea-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/dev_gitea_data",
|
|
"/volumes/dev_gitea_config",
|
|
"/volumes/dev_gitea_runner_data"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 11 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "coolify-backup",
|
|
"repo": "hidrive-backup",
|
|
"paths": [
|
|
"/volumes/dev_coolify_data"
|
|
],
|
|
"schedule": {
|
|
"cron": "0 0 * * *"
|
|
},
|
|
"retention": {
|
|
"policyTimeBucketed": {
|
|
"daily": 7,
|
|
"weekly": 4,
|
|
"monthly": 6,
|
|
"yearly": 2
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|