set -euo pipefail
+ filename=${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).sql
${hcfg.package}/bin/mysqldump \
--defaults-file=${config.secrets.location}/mysql_replication/${name}/mysqldump \
-S /run/mysqld_${name}/mysqld.sock \
--gtid \
--master-data \
--flush-privileges \
- --all-databases > ${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).sql
+ --all-databases > $filename
+ ${pkgs.gzip}/bin/gzip $filename
'';
u = pkgs.callPackage ./utils.nix {};
- cleanup_script = pkgs.writeScript "cleanup_mysql_${name}" (u.exponentialDumps "sql" backupDir);
+ cleanup_script = pkgs.writeScript "cleanup_mysql_${name}" (u.exponentialDumps "sql.gz" backupDir);
in [
"0 22,4,10,16 * * * root ${backup_script}"
"0 3 * * * root ${cleanup_script}"