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
|
|
}
|
|
}
|