verify: log/warn on invalid owner
in order to trigger a notification/make the problem more visible than just in syslog. Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
This commit is contained in:
parent
f4f9a503de
commit
1b1cab8321
@ -648,7 +648,7 @@ pub fn verify(
|
|||||||
verify_all_backups(datastore, worker.clone(), worker.upid(), owner, None)?
|
verify_all_backups(datastore, worker.clone(), worker.upid(), owner, None)?
|
||||||
};
|
};
|
||||||
if failed_dirs.len() > 0 {
|
if failed_dirs.len() > 0 {
|
||||||
worker.log("Failed to verify following snapshots:");
|
worker.log("Failed to verify following snapshots/groups:");
|
||||||
for dir in failed_dirs {
|
for dir in failed_dirs {
|
||||||
worker.log(format!("\t{}", dir));
|
worker.log(format!("\t{}", dir));
|
||||||
}
|
}
|
||||||
|
@ -508,23 +508,31 @@ pub fn verify_all_backups(
|
|||||||
}
|
}
|
||||||
|
|
||||||
let filter_by_owner = |group: &BackupGroup| {
|
let filter_by_owner = |group: &BackupGroup| {
|
||||||
if let Some(owner) = &owner {
|
match (datastore.get_owner(group), &owner) {
|
||||||
match datastore.get_owner(group) {
|
(Ok(ref group_owner), Some(owner)) => {
|
||||||
Ok(ref group_owner) => {
|
group_owner == owner
|
||||||
group_owner == owner
|
|| (group_owner.is_token()
|
||||||
|| (group_owner.is_token()
|
&& !owner.is_token()
|
||||||
&& !owner.is_token()
|
&& group_owner.user() == owner.user())
|
||||||
&& group_owner.user() == owner.user())
|
},
|
||||||
},
|
(Ok(_), None) => true,
|
||||||
Err(err) => {
|
(Err(err), Some(_)) => {
|
||||||
// intentionally not in task log
|
// intentionally not in task log
|
||||||
// the task user might not be allowed to see this group!
|
// the task user might not be allowed to see this group!
|
||||||
println!("Failed to get owner of group '{}' - {}", group, err);
|
println!("Failed to get owner of group '{}' - {}", group, err);
|
||||||
false
|
false
|
||||||
},
|
},
|
||||||
}
|
(Err(err), None) => {
|
||||||
} else {
|
// we don't filter by owner, but we want to log the error
|
||||||
true
|
task_log!(
|
||||||
|
worker,
|
||||||
|
"Failed to get owner of group '{} - {}",
|
||||||
|
group,
|
||||||
|
err,
|
||||||
|
);
|
||||||
|
errors.push(group.to_string());
|
||||||
|
true
|
||||||
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user