51 lines
949 B
HCL
51 lines
949 B
HCL
|
job "authelia" {
|
||
|
schedule = "@daily"
|
||
|
|
||
|
config {
|
||
|
repo = "rclone::ftp,env_auth:/nomad/authelia"
|
||
|
passphrase = env("BACKUP_PASSPHRASE")
|
||
|
}
|
||
|
|
||
|
task "Create local authelia dir" {
|
||
|
pre_script {
|
||
|
on_backup = "mkdir -p /local/authelia"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
task "Backup database" {
|
||
|
mysql "Backup database" {
|
||
|
hostname = env("MYSQL_HOST")
|
||
|
port = env("MYSQL_PORT")
|
||
|
database = "authelia"
|
||
|
username = env("MYSQL_USER")
|
||
|
password = env("MYSQL_PASSWORD")
|
||
|
no_tablespaces = true
|
||
|
dump_to = "/local/authelia/dump.sql"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
backup {
|
||
|
paths = ["/local/authelia"]
|
||
|
|
||
|
backup_opts {
|
||
|
Host = "nomad"
|
||
|
}
|
||
|
|
||
|
restore_opts {
|
||
|
Host = ["nomad"]
|
||
|
# Because path is absolute
|
||
|
Target = "/"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
forget {
|
||
|
KeepLast = 2
|
||
|
KeepHourly = 24
|
||
|
KeepDaily = 30
|
||
|
KeepWeekly = 8
|
||
|
KeepMonthly = 6
|
||
|
KeepYearly = 2
|
||
|
Prune = true
|
||
|
}
|
||
|
}
|