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 9D2E71FF0B0 for ; Fri, 09 Oct 2026 16:53:43 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 038C0215CF; Fri, 09 Oct 2026 16:53:43 +0200 (CEST) From: Jonas Theisen 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 Message-ID: <20261009145328.281554-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: 1791557617486 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.173 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: HJZQ5XJDBGXGQIXKQX6KSPMBTKWOG7TM X-Message-ID-Hash: HJZQ5XJDBGXGQIXKQX6KSPMBTKWOG7TM 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 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