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 C95A31FF0C2 for ; Thu, 22 Oct 2026 14:58:49 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 6976321813; Thu, 22 Oct 2026 14:58:49 +0200 (CEST) Message-ID: <9809fd7b-f21a-4df0-bb6c-5bba0f7ecad4@proxmox.com> Date: Thu, 22 Oct 2026 14:58:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 0/7] client: add scheduled backup jobs To: Thomas Lamprecht , pbs-devel@lists.proxmox.com References: <20261014105208.2747208-1-t.lamprecht@proxmox.com> Content-Language: en-US, de-DE From: Christian Ebner In-Reply-To: <20261014105208.2747208-1-t.lamprecht@proxmox.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1792673925268 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.497 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: 5RRLW3HLOYG2YRSJ76LYOWBWGEJSD6VD X-Message-ID-Hash: 5RRLW3HLOYG2YRSJ76LYOWBWGEJSD6VD X-MailFrom: c.ebner@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: On 10/21/26 10:55 PM, Thomas Lamprecht wrote: > This adds per-user backup jobs and a scheduler daemon to > proxmox-backup-client, so that a workstation or laptop can back itself > up on a schedule without a cron entry or systemd timer per job. > > A config entry stores everything a backup job run needs: the repository, the > backup sources and options, where the password and key passphrase come from, > and an optional pre-run hook that can skip a run, for example on low > battery. > The new `job` subcommands manage the jobs in the user's XDG config > directory, `job run` runs one right away, and `job scheduler` acts as > daemon-process that runs jobs as they become due. The scheduler is meant > to run as the systemd user service that the package ships but does not > enable. > > Like the server's jobs, a failed or interrupted run is not retried before > its next scheduled time. A retry policy could be added later though if it > turns out to be useful. Thanks for the patches, really nice addition to the client! While skimming trough the patches a few ideas for potential improvements came to mind. * Allowing to clone an already existing backup job: This would help to ease setup for multiple jobs with recurring patterns, e.g. only differing in namespace and backup specs. * Adding a connection test for a configured job: It is currently possible to setup a job with incorrect connection information for the PBS. I think it would be nice to have a command to perform a basic connection test without having to actually perform a backup run right away. * Splitting of the target config from the job config: It might make sense to have the target configurable independent of the job. And make it reusable for all the client commands not just the jobs itself. Although not so sure about this part, having all the config in the same place has advantages as well, and there will mostly be only a single target.