From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [45.144.208.40]) by lore.proxmox.com (Postfix) with ESMTPS id BDE4C1FF0E4 for ; Tue, 11 Aug 2026 13:44:00 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id EAD5921636; Tue, 11 Aug 2026 13:43:39 +0200 (CEST) From: Erik Fastermann To: pbs-devel@lists.proxmox.com, pdm-devel@lists.proxmox.com Subject: [PATCH proxmox{,-backup,-datacenter-manager} v3 0/5] factor system report into shared crate Date: Tue, 11 Aug 2026 13:43:27 +0200 Message-ID: <20260811114332.283776-1-e.fastermann@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-SPAM-LEVEL: Spam detection results: 1 AWL -0.510 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) KAM_LAZY_DOMAIN_SECURITY 1 Sending domain does not have any anti-forgery methods RDNS_NONE 1.274 Delivered to internal network by a host with no rDNS SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_NONE 0.001 SPF: sender does not publish an SPF Record Message-ID-Hash: QL23NZ4ABH5A55U5JPX2DVEXM5QOVP3K X-Message-ID-Hash: QL23NZ4ABH5A55U5JPX2DVEXM5QOVP3K X-MailFrom: efastermann@ruth.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 CC: Erik Fastermann X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Datacenter Manager development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This series moves the system report logic that was duplicated in PBS and PDM into a new shared proxmox-system-report crate. proxmox: Adds the proxmox-system-report crate holding the common file, command and function collection, the unified section order (FILES, COMMANDS, FUNCTIONS) and the merged set of general commands run on every product. proxmox-backup, proxmox-datacenter-manager: Drop the duplicated logic and generate the report through the shared crate, passing only their product specific files, commands and functions. The report content stays the same apart from two intentional effects of sharing one implementation. The top-level section order is now the same for both products and the general command set is the union of what each ran before. PDM additionally emits FILES first now instead of last. Product specific entries are untouched. The PDM part of this series relies on an unapplied patch [0]. This was done intentionally, as a similar patch was already applied for PBS [1] and the shared report generation includes it. Thank you @Christian Ebner for the feedback. Changes since v1: * Use version 1.0.0 for the new crate * Add Debian changelog and control files for the new crate * Use only 2026 as the year for the copyright notice of the new crate * Rename CommandSpec types and update the doc comment * Use the common_* and project_* prefixes for the related functions * Add the previously missing report dependencies as extra commits for PDM and PBS * Add the newly required report dependencies to PDM * Add librust-proxmox-system-report-1+default-dev as a dependency to PDM and PBS * Add a commented out local path override for proxmox-system-report to the `Cargo.toml` file in PDM and PBS Changes since v2: * Remove the Debian changelog file * Added Reviewed-by and Tested-by trailers [0] https://lore.proxmox.com/pdm-devel/20260515084116.8028-1-e.fastermann@proxmox.com/ [1] https://lore.proxmox.com/all/178402620783.364806.14819322231885586699.b4-ty@proxmox.com/ Erik Fastermann (1): system-report: add crate for shared report generation Cargo.toml | 2 + proxmox-system-report/Cargo.toml | 16 ++ proxmox-system-report/debian/control | 36 ++++ proxmox-system-report/debian/copyright | 18 ++ proxmox-system-report/debian/debcargo.toml | 7 + proxmox-system-report/src/lib.rs | 239 +++++++++++++++++++++ 6 files changed, 318 insertions(+) create mode 100644 proxmox-system-report/Cargo.toml create mode 100644 proxmox-system-report/debian/control create mode 100644 proxmox-system-report/debian/copyright create mode 100644 proxmox-system-report/debian/debcargo.toml create mode 100644 proxmox-system-report/src/lib.rs proxmox-backup: Erik Fastermann (2): d/control: depend on tools used by the system report report: use shared proxmox-system-report crate Cargo.toml | 3 + debian/control | 4 + src/server/report.rs | 217 ++++--------------------------------------- 3 files changed, 24 insertions(+), 200 deletions(-) proxmox-datacenter-manager: Erik Fastermann (2): d/control: depend on tools used by the system report report: use shared proxmox-system-report crate Cargo.toml | 2 + debian/control | 10 ++- server/Cargo.toml | 1 + server/src/report.rs | 198 +------------------------------------------ 4 files changed, 16 insertions(+), 195 deletions(-) Summary over all repositories: 13 files changed, 358 insertions(+), 395 deletions(-) -- Generated by murpp 0.11.0