[pbs-devel] [PATCH proxmox-backup v7 0/4] fix #4315: datastore: Exclude entries from sync

Philipp Hufnagl p.hufnagl at proxmox.com
Tue Jan 2 12:06:51 CET 2024


This allows to use Group Filter for sync jobs so matches can not just be
included but also excluded. For this the "group-filter" configuration
syntax has been extended with an optional "behaviour" parameter.
this can be "include" or "exclude". First, all include filter will be
applied, then all exclude filter. If no include filters exist, all will
be considered included.

Signed-off-by: Philipp Hufnagl <p.hufnagl at proxmox.com>
---
Changes since v6:
 * Optimize apply_filter to use less memory

Changes since v5:
 * add apply_filter to GrpupFilter member
 * do include/eclude filter seperation in apply_filter
 * minor code improvements based on feedback

Changes since v4:
 * add testing
 * refactor apply filter logic to reduce duplicaton
 * split filter in incude/exclude lists

Changes since v3:
 * increase size of delete icon
 * include all when no include filter exist

Changes since v2:
 * rebase to new master
 * change docu as suggested
 * make list for filter smaller

Changes since v1:
 * rename behaviour in behavior
 * modify behavior, so that first all include filter will be executed,
   then all exlude one

Philipp Hufnagl (4):
  fix #4315: jobs: modify GroupFilter so include/exclude is tracked
  ui: Show if Filter includes or excludes
  docs: document new include/exclude paramenter
  tests: check if include/exclude behavior works correctly

 docs/managing-remotes.rst      |  13 ++
 pbs-api-types/src/datastore.rs |  36 +++--
 pbs-api-types/src/jobs.rs      |  51 ++++++--
 src/api2/tape/backup.rs        |  39 +++---
 src/server/pull.rs             |  46 +++----
 tests/sync_jobs.rs             |  76 +++++++++++
 www/form/GroupFilter.js        | 233 ++++++++++++++++++++++++---------
 7 files changed, 358 insertions(+), 136 deletions(-)
 create mode 100644 tests/sync_jobs.rs

-- 
2.39.2





More information about the pbs-devel mailing list