From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 0FB311FF141 for ; Mon, 30 Mar 2026 20:23:46 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 9F82C6336; Mon, 30 Mar 2026 20:24:09 +0200 (CEST) From: Thomas Lamprecht To: pbs-devel@lists.proxmox.com Subject: [PATCH v2 0/5] client: repository: add individual component parameters Date: Mon, 30 Mar 2026 20:20:36 +0200 Message-ID: <20260330182352.2346420-1-t.lamprecht@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1774894989231 X-SPAM-LEVEL: Spam detection results: 0 AWL -1.508 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 1 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 1 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 1 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. 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: 2A6QZB7YB4LHHRBXGBWB65HVQNNRLZUU X-Message-ID-Hash: 2A6QZB7YB4LHHRBXGBWB65HVQNNRLZUU X-MailFrom: t.lamprecht@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: This is a follow-up to the v1 sent on 2026-03-23 [0], reworked based on review feedback. The compact repository URL format ([[auth-id@]server[:port]:]datastore) can be cumbersome to work with when changing a single aspect of the connection or when using API tokens. This series adds --server, --port, --datastore, --auth-id, and --ns as separate CLI parameters alongside the existing compound --repository URL. Changes since v1: - Split the single large commit into five: preparatory tests, core struct + extraction logic, mechanical command migration, docs, and PBS_NAMESPACE env var (new, addressing bug #5340 that Fabian pointed out - thx!) - CLI atom options now merge with PBS_* env vars per-field (CLI wins), following the common convention where CLI flags override their corresponding environment variable defaults, rather than treating CLI and env as mutually exclusive layers (like e.g. borg, restic but also others like postgresql's psql all do) - Fixed error swallowing: --repository combined with atom options now properly reports the mutual-exclusion error instead of falling through to "unable to get repository" - Fixed duplicate ns property in the restore command's #[api] block - Removed bogus left-over hunk about @-escaping in the docs - Added --server docs note about requiring --datastore (mix-and-match still allowed from any valid source) - Improved env var descriptions (no misleading "default" prefix) - PBS_NAMESPACE works uniformly across all three client binaries (proxmox-backup-client, proxmox-file-restore, proxmox-backup-debug) [0] https://lore.proxmox.com/pbs-devel/20260323211400.2661765-1-t.lamprecht@proxmox.com/ Thomas Lamprecht (5): client: repository: add tests for BackupRepository parsing client: repository: add individual component parameters client: migrate commands to flattened repository args docs: document repository component options and env vars client: repository: add PBS_NAMESPACE environment variable docs/backup-client.rst | 64 +++++ pbs-client/src/backup_repo.rs | 305 +++++++++++++++++++++++- pbs-client/src/tools/mod.rs | 318 ++++++++++++++++++++++--- proxmox-backup-client/src/benchmark.rs | 8 +- proxmox-backup-client/src/catalog.rs | 26 +- proxmox-backup-client/src/group.rs | 14 +- proxmox-backup-client/src/main.rs | 101 ++++---- proxmox-backup-client/src/mount.rs | 17 +- proxmox-backup-client/src/namespace.rs | 33 +-- proxmox-backup-client/src/snapshot.rs | 84 ++----- proxmox-backup-client/src/task.rs | 20 +- proxmox-file-restore/src/main.rs | 43 ++-- src/bin/proxmox_backup_debug/diff.rs | 23 +- 13 files changed, 808 insertions(+), 248 deletions(-) -- 2.47.3