44 lines
921 B
HCL
44 lines
921 B
HCL
|
job "Nextcloud" {
|
||
|
schedule = "* * * * *"
|
||
|
|
||
|
config {
|
||
|
# TODO: Backup to a meaningful location, this is just for testing
|
||
|
repo = "/local/repo"
|
||
|
# Read from secret file
|
||
|
passphrase = env("BACKUP_PASSPHRASE")
|
||
|
}
|
||
|
|
||
|
# Remove when using a proper backup destination
|
||
|
task "Create dir for repo" {
|
||
|
pre_script {
|
||
|
on_backup = "echo 'Backing up something'"
|
||
|
}
|
||
|
pre_script {
|
||
|
on_backup = "mkdir -p /local/repo"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
mysql "Backup database" {
|
||
|
hostname = env("MYSQL_HOST")
|
||
|
port = env("MYSQL_PORT")
|
||
|
database = env("MYSQL_DATABASE")
|
||
|
username = env("MYSQL_USER")
|
||
|
password = env("MYSQL_PASSWORD")
|
||
|
no_tablespaces = true
|
||
|
dump_to = "/local/dump.sql"
|
||
|
}
|
||
|
|
||
|
backup {
|
||
|
paths = ["/data/nextcloud"]
|
||
|
# Because path is absolute
|
||
|
restore_opts {
|
||
|
Target = "/"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
forget {
|
||
|
KeepLast = 2
|
||
|
Prune = true
|
||
|
}
|
||
|
}
|