]> git.proxmox.com Git - proxmox-backup.git/commitdiff
fix regression test file permission problems
authorDietmar Maurer <dietmar@proxmox.com>
Wed, 21 Jul 2021 06:12:51 +0000 (08:12 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 21 Jul 2021 07:30:22 +0000 (09:30 +0200)
By simply using the current user/group instead of backup:backup

src/backup/mod.rs

index 31bd1b3bd7702c8160bc963fd327b0221018bd20..20b6b3caeca99389dd37eb012aecdae2a942d8ae 100644 (file)
@@ -12,17 +12,27 @@ pub const BACKUP_GROUP_NAME: &str = "backup";
 
 /// Return User info for the 'backup' user (``getpwnam_r(3)``)
 pub fn backup_user() -> Result<nix::unistd::User, Error> {
-    match nix::unistd::User::from_name(BACKUP_USER_NAME)? {
-        Some(user) => Ok(user),
-        None => bail!("Unable to lookup backup user."),
+    if cfg!(test) {
+        // fix permission problems with regressions test (when run as non-root).
+        Ok(nix::unistd::User::from_uid(nix::unistd::Uid::current())?.unwrap())
+    } else {
+        match nix::unistd::User::from_name(BACKUP_USER_NAME)? {
+            Some(user) => Ok(user),
+            None => bail!("Unable to lookup backup user."),
+        }
     }
 }
 
 /// Return Group info for the 'backup' group (``getgrnam(3)``)
 pub fn backup_group() -> Result<nix::unistd::Group, Error> {
-    match nix::unistd::Group::from_name(BACKUP_GROUP_NAME)? {
-        Some(group) => Ok(group),
-        None => bail!("Unable to lookup backup user."),
+    if cfg!(test) {
+        // fix permission problems with regressions test (when run as non-root).
+        Ok(nix::unistd::Group::from_gid(nix::unistd::Gid::current())?.unwrap())
+    } else {
+        match nix::unistd::Group::from_name(BACKUP_GROUP_NAME)? {
+            Some(group) => Ok(group),
+            None => bail!("Unable to lookup backup user."),
+        }
     }
 }