use sudo to tar redis db

This commit is contained in:
jaina heartles 2025-01-01 19:39:15 -05:00
parent d734274b8a
commit c3e53a4c36

View file

@ -12,6 +12,8 @@ let
backupConfigFile = "/etc/misskey-backup/conf"; backupConfigFile = "/etc/misskey-backup/conf";
s3Cfg = "/etc/misskey-backup/s3cfg"; s3Cfg = "/etc/misskey-backup/s3cfg";
tarRedisStdoutCmd = "tar -cz -C /var/lib/redis-misskey .";
in { in {
users.users."${user}" = { users.users."${user}" = {
isSystemUser = true; isSystemUser = true;
@ -62,7 +64,7 @@ in {
pg_dump misskey | gzip | upload "pg_dump.sql.gz" pg_dump misskey | gzip | upload "pg_dump.sql.gz"
echo "Uploading redis database..." echo "Uploading redis database..."
tar -cz -C /var/lib/redis-misskey . | upload "redis.tar.gz" sudo ${tarRedisStdoutCmd} | upload "redis.tar.gz"
echo "Backup complete to '$s3Dir'" echo "Backup complete to '$s3Dir'"
''; '';
@ -73,4 +75,12 @@ in {
}; };
systemd.timers.misskey-backup = { timerConfig.Persistent = true; }; systemd.timers.misskey-backup = { timerConfig.Persistent = true; };
security.sudo.extraRules = [{
groups = [ group ];
commands = [{
command = tarRedisStdoutCmd;
options = [ "NOPASSWD" ];
}];
}];
} }