public inbox for pbs-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Jonas Theisen <j.theisen@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [PATCH proxmox{,-backup} v3 00/10] fix #7904: Implement Enable checkboxes for all jobs
Date: Fri,  9 Oct 2026 16:53:09 +0200	[thread overview]
Message-ID: <20261009145328.281554-1-j.theisen@proxmox.com> (raw)

Goal of this patch series is to allow users to disable tasks
without having to remove their current schedule.
This was already possible for Prune jobs.

This can be used f.ex. to create jobs which are supposed to
be run only manually.

Backwards compatibiltiy was kept in mind so that existing
jobs wiithout schedules would not need manual intervention.
They will get updated and adapt the new scheme on the next
actual user change.

The "remove clear" patch is to be considered optional as it does not
interfere with the functionality of the checkboxes but was rather
added from a personal perspective that this would improve UX.

Thanks for the review and help off-list @c.ebner and @m.sandoval!

Also because of this feedback the patch series expanded by
a few patches to cover more cases and deliver more uniformity.

changes from v2:
 * inverted patches to use "disable" instead of "enable"
 * added API requirement to set disable if no schedule is set
 * fixed commit messages
 * moved default values from UI to API
 * aligned prune job config to other jobs to allow creation
   without schedule
 * added "Enable" checkboxes to the datastore creation window
 * added "prune-disable" parameter to the create datastore
   api endpoint

proxmox:

Jonas Theisen (2):
  fix #7904: Add 'disable' to {sync,verify,tape,gc} job schema and
    datastore config
  pbs-api-types: prune job: make schedule optional

 pbs-api-types/src/datastore.rs | 17 +++++++++++++++++
 pbs-api-types/src/jobs.rs      | 31 ++++++++++++++++++++++++++++++-
 2 files changed, 47 insertions(+), 1 deletion(-)


proxmox-backup:

Jonas Theisen (8):
  ui: prune job: align prune edit window to other "Enable" checkboxes
  api: prune job: align prune job schedule to other jobs
  fix #7904: api: implement "disable" for {sync,verify,tape,GC} jobs
  fix #7904: ui: job edit: introduce "Enable" checkbox for
    {sync,verify,tape,GC} jobs
  ui: improve visibility of disabled {sync,verify,tape,GC,prune} jobs on
    the overview page
  ui: calendar-event: remove clear button from calendar selector
  api: create datastore: allow creation without prune job
  ui: create datastore: add enable checkboxes for {GC, prune}

 src/api2/admin/datastore.rs                   |  1 +
 src/api2/admin/gc.rs                          | 12 ++-
 src/api2/admin/prune.rs                       |  2 +-
 src/api2/admin/sync.rs                        |  7 +-
 src/api2/admin/verify.rs                      |  7 +-
 src/api2/config/datastore.rs                  | 20 ++++-
 src/api2/config/prune.rs                      | 16 ++--
 src/api2/config/sync.rs                       | 18 ++++-
 src/api2/config/tape_backup_job.rs            |  9 ++-
 src/api2/config/verify.rs                     | 17 +++-
 src/api2/tape/backup.rs                       |  6 +-
 src/bin/proxmox-backup-proxy.rs               | 25 +++++-
 .../proxmox_backup_manager/migrate_config.rs  |  2 +-
 www/Utils.js                                  | 10 +++
 www/config/GCView.js                          |  4 +-
 www/config/PruneView.js                       |  1 +
 www/config/SyncView.js                        |  2 +
 www/config/VerifyView.js                      |  2 +
 www/form/CalendarEvent.js                     | 19 -----
 www/tape/BackupJobs.js                        |  2 +
 www/tape/window/TapeBackupJob.js              | 40 +++++++++-
 www/window/DataStoreEdit.js                   | 77 ++++++++++++++++++-
 www/window/GCJobEdit.js                       | 52 +++++++++++--
 www/window/PruneJobEdit.js                    | 19 ++++-
 www/window/SyncJobEdit.js                     | 36 ++++++++-
 www/window/VerifyJobEdit.js                   | 40 +++++++++-
 26 files changed, 392 insertions(+), 54 deletions(-)


Summary over all repositories:
  28 files changed, 439 insertions(+), 55 deletions(-)

-- 
Generated by murpp 0.12.1




             reply	other threads:[~2026-10-09 14:53 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-09 14:53 Jonas Theisen [this message]
2026-10-09 14:53 ` [PATCH proxmox v3 01/10] fix #7904: Add 'disable' to {sync,verify,tape,gc} job schema and datastore config Jonas Theisen
2026-10-09 14:53 ` [PATCH proxmox v3 02/10] pbs-api-types: prune job: make schedule optional Jonas Theisen
2026-10-09 14:53 ` [PATCH proxmox-backup v3 03/10] ui: prune job: align prune edit window to other "Enable" checkboxes Jonas Theisen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261009145328.281554-1-j.theisen@proxmox.com \
    --to=j.theisen@proxmox.com \
    --cc=pbs-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal