2024-07-12 14:35:24 +02:00
|
|
|
{
|
|
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
|
|
"title": "rsnapshot Configuration",
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
2024-07-12 18:03:54 +02:00
|
|
|
"rsnapshot_ssh_private_key": {
|
|
|
|
"type": "string",
|
|
|
|
"description": "Name of the SSH private key for backups"
|
|
|
|
},
|
2024-07-12 14:35:24 +02:00
|
|
|
"rsnapshot_snapshot_root": {
|
|
|
|
"type": "string",
|
|
|
|
"description": "Root directory where all snapshots will be stored"
|
|
|
|
},
|
|
|
|
"rsnapshot_retains": {
|
|
|
|
"type": "object",
|
|
|
|
"description": "Backup retains intervals",
|
|
|
|
"properties": {
|
|
|
|
"hourly": { "type": "integer", "minimum": 1 },
|
|
|
|
"daily": { "type": "integer", "minimum": 1 },
|
|
|
|
"weekly": { "type": "integer", "minimum": 1 },
|
|
|
|
"monthly": { "type": "integer", "minimum": 1 }
|
|
|
|
},
|
|
|
|
"required": ["hourly", "daily", "weekly", "monthly"]
|
|
|
|
},
|
|
|
|
"rsnapshot_verbose": {
|
|
|
|
"type": "integer",
|
|
|
|
"minimum": 1,
|
|
|
|
"maximum": 5,
|
|
|
|
"description": "Verbosity level of the output (1-5)"
|
|
|
|
},
|
|
|
|
"rsnapshot_loglevel": {
|
|
|
|
"type": "integer",
|
|
|
|
"minimum": 1,
|
|
|
|
"maximum": 5,
|
|
|
|
"description": "Log level of the output (1-5)"
|
|
|
|
},
|
|
|
|
"rsnapshot_logfile": {
|
|
|
|
"type": "string",
|
|
|
|
"description": "Path to the logfile"
|
|
|
|
},
|
|
|
|
"rsnapshot_link_dest": {
|
|
|
|
"type": "integer",
|
|
|
|
"enum": [0, 1],
|
|
|
|
"description": "Whether to use --link-dest with rsync (0 or 1)"
|
|
|
|
},
|
|
|
|
"rsnapshot_sync_first": {
|
|
|
|
"type": "integer",
|
|
|
|
"enum": [0, 1],
|
|
|
|
"description": "Whether to sync first (0 or 1)"
|
|
|
|
},
|
|
|
|
"rsnapshot_numtries": {
|
|
|
|
"type": "integer",
|
|
|
|
"minimum": 1,
|
|
|
|
"description": "Number of rsync retries"
|
|
|
|
},
|
|
|
|
"rsnapshot_backup_scripts": {
|
|
|
|
"type": "array",
|
|
|
|
"description": "List of backup scripts",
|
|
|
|
"items": { "type": "string" }
|
|
|
|
},
|
|
|
|
"rsnapshot_backups": {
|
|
|
|
"type": "array",
|
|
|
|
"description": "List of backup configurations",
|
|
|
|
"items": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"remote": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"user": { "type": "string", "description": "Remote user" },
|
|
|
|
"host": { "type": "string", "description": "Remote host" },
|
|
|
|
"paths": {
|
|
|
|
"type": "array",
|
|
|
|
"items": { "type": "string" },
|
|
|
|
"description": "Paths to back up on the remote host"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"required": ["user", "host", "paths"]
|
|
|
|
},
|
|
|
|
"local": {
|
|
|
|
"type": "string",
|
|
|
|
"description": "Local path to store backups"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"required": ["remote", "local"]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"required": [
|
|
|
|
"rsnapshot_snapshot_root",
|
|
|
|
"rsnapshot_retains",
|
|
|
|
"rsnapshot_verbose",
|
|
|
|
"rsnapshot_loglevel",
|
|
|
|
"rsnapshot_logfile",
|
|
|
|
"rsnapshot_link_dest",
|
|
|
|
"rsnapshot_sync_first",
|
|
|
|
"rsnapshot_numtries",
|
|
|
|
"rsnapshot_backup_scripts",
|
|
|
|
"rsnapshot_backups"
|
|
|
|
]
|
|
|
|
}
|