homelab-nomad/backups/jobs/grafana.hcl

51 lines
942 B
HCL
Raw Normal View History

2022-11-04 16:39:08 +00:00
job "grafana" {
schedule = "@daily"
2022-11-03 03:30:04 +00:00
config {
repo = "rclone::ftp,env_auth:/nomad/grafana"
passphrase = env("BACKUP_PASSPHRASE")
}
2022-11-03 22:10:09 +00:00
2022-11-03 03:30:04 +00:00
task "Create local grafana dir" {
pre_script {
on_backup = "mkdir -p /local/grafana"
}
}
task "Backup database" {
mysql "Backup database" {
hostname = env("MYSQL_HOST")
port = env("MYSQL_PORT")
database = "grafana"
username = env("MYSQL_USER")
password = env("MYSQL_PASSWORD")
no_tablespaces = true
dump_to = "/local/grafana/dump.sql"
}
2022-11-03 03:30:04 +00:00
}
backup {
paths = ["/local/grafana"]
backup_opts {
Host = "nomad"
}
2022-11-03 03:30:04 +00:00
restore_opts {
Host = ["nomad"]
# Because path is absolute
2022-11-03 03:30:04 +00:00
Target = "/"
}
}
forget {
KeepLast = 2
2023-01-07 00:08:16 +00:00
KeepHourly = 24
KeepDaily = 30
KeepWeekly = 8
KeepMonthly = 6
KeepYearly = 2
2022-11-03 03:30:04 +00:00
Prune = true
}
}