[pbs-devel] [PATCH proxmox-backup 2/5] tape backup jobs: add group filters to config/api
Dominik Csapak
d.csapak at proxmox.com
Thu Nov 4 10:56:19 CET 2021
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
pbs-api-types/src/jobs.rs | 6 ++++++
src/api2/config/tape_backup_job.rs | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/pbs-api-types/src/jobs.rs b/pbs-api-types/src/jobs.rs
index 18c55dad..320c879e 100644
--- a/pbs-api-types/src/jobs.rs
+++ b/pbs-api-types/src/jobs.rs
@@ -247,6 +247,10 @@ pub struct VerificationJobStatus {
optional: true,
type: Userid,
},
+ groups: {
+ schema: GROUP_FILTER_LIST_SCHEMA,
+ optional: true,
+ },
}
)]
#[derive(Serialize,Deserialize,Clone,Updater)]
@@ -265,6 +269,8 @@ pub struct TapeBackupJobSetup {
/// Send job email notification to this user
#[serde(skip_serializing_if="Option::is_none")]
pub notify_user: Option<Userid>,
+ #[serde(skip_serializing_if="Option::is_none")]
+ pub groups: Option<Vec<GroupFilter>>,
}
#[api(
diff --git a/src/api2/config/tape_backup_job.rs b/src/api2/config/tape_backup_job.rs
index 6c5680d3..84dda075 100644
--- a/src/api2/config/tape_backup_job.rs
+++ b/src/api2/config/tape_backup_job.rs
@@ -133,6 +133,8 @@ pub enum DeletableProperty {
LatestOnly,
/// Delete the 'notify-user' property
NotifyUser,
+ /// Delete the 'groups' property
+ Groups,
}
#[api(
@@ -191,6 +193,7 @@ pub fn update_tape_backup_job(
DeletableProperty::NotifyUser => { data.setup.notify_user = None; },
DeletableProperty::Schedule => { data.schedule = None; },
DeletableProperty::Comment => { data.comment = None; },
+ DeletableProperty::Groups => { data.setup.groups = None; },
}
}
}
@@ -203,6 +206,7 @@ pub fn update_tape_backup_job(
if update.setup.export_media_set.is_some() { data.setup.export_media_set = update.setup.export_media_set; }
if update.setup.latest_only.is_some() { data.setup.latest_only = update.setup.latest_only; }
if update.setup.notify_user.is_some() { data.setup.notify_user = update.setup.notify_user; }
+ if update.setup.groups.is_some() { data.setup.groups = update.setup.groups; }
let schedule_changed = data.schedule != update.schedule;
if update.schedule.is_some() { data.schedule = update.schedule; }
--
2.30.2
More information about the pbs-devel
mailing list