From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id 09A231FF0C0 for ; Wed, 04 Nov 2026 15:54:22 +0100 (CET) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 99CDE211FA; Wed, 04 Nov 2026 15:54:21 +0100 (CET) From: Jonas Theisen To: pbs-devel@lists.proxmox.com Subject: [PATCH proxmox{,-backup} v5 0/9] fix #7904: Implement Enable checkboxes for all jobs Date: Wed, 4 Nov 2026 15:53:26 +0100 Message-ID: <20261104145405.441861-1-j.theisen@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1793804054348 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.106 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: RYW7YR7J4MS5CO3QDOUQ4D3RQVGAPFNF X-Message-ID-Hash: RYW7YR7J4MS5CO3QDOUQ4D3RQVGAPFNF X-MailFrom: j.theisen@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Backup Server development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: 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! Depends-on: https://lore.proxmox.com/pbs-devel/20261014144357.771051-2-c.ebner@proxmox.com/ and https://lore.proxmox.com/all/20261022161612.331793-1-j.theisen@proxmox.com/ changes from v4: * fixed commit message * added code comments reasoning value parameter for checkboxes * rebased on current master and fixed missing test parameter proxmox: Jonas Theisen (2): pbs-api-types: 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 | 13 ++++++++++ pbs-api-types/src/jobs.rs | 43 +++++++++++++++++++++++++++------- 2 files changed, 48 insertions(+), 8 deletions(-) proxmox-backup: Jonas Theisen (7): server: schedules: add 'disable' parameter to compute_schedule_status() 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: add "Enable" checkbox to {sync,verify,tape,GC} job edit ui: job overview: show "Disabled" as schedule of disabled jobs ui: calendar-event: hide clear button if a schedule is required src/api2/admin/datastore.rs | 9 +++- src/api2/admin/prune.rs | 6 +-- src/api2/admin/sync.rs | 3 +- src/api2/admin/verify.rs | 7 ++- src/api2/config/datastore.rs | 11 +++- src/api2/config/prune.rs | 16 ++++-- src/api2/config/sync.rs | 19 ++++++- src/api2/config/tape_backup_job.rs | 17 +++++- src/api2/config/verify.rs | 17 +++++- src/api2/tape/backup.rs | 7 ++- src/bin/proxmox-backup-proxy.rs | 25 ++++++++- .../proxmox_backup_manager/migrate_config.rs | 2 +- src/server/jobstate.rs | 4 +- www/Utils.js | 22 ++++++++ www/config/GCView.js | 3 +- 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 | 37 +++++++++++-- www/window/GCJobEdit.js | 52 +++++++++++++++++-- www/window/PruneJobEdit.js | 44 +++++++++++----- www/window/SyncJobEdit.js | 34 ++++++++++-- www/window/VerifyJobEdit.js | 33 ++++++++++-- 25 files changed, 338 insertions(+), 56 deletions(-) Summary over all repositories: 27 files changed, 386 insertions(+), 64 deletions(-) -- Generated by murpp 0.12.1