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 1DF031FF0AE for ; Tue, 29 Sep 2026 11:22:02 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id DACF521548; Tue, 29 Sep 2026 11:21:57 +0200 (CEST) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Tue, 29 Sep 2026 11:21:52 +0200 Message-Id: From: "Max R. Carrara" Subject: Re: [PATCH common/manager/proxmox-widget-toolkit/storage/storage-plugin-examples v3 00/17] GUI Support for Custom Storage Plugins To: "Alfonso Kuen" , X-Mailer: aerc 0.18.2-0-ge037c095a049 References: <20260727143445.513900-1-m.carrara@proxmox.com> <179025770001.167092.13101306988170112450@idkmanager.com> In-Reply-To: <179025770001.167092.13101306988170112450@idkmanager.com> X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1790673712357 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.347 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: 6XLNV563NUNVIOQCPYGEHXNAXMNRIDYI X-Message-ID-Hash: 6XLNV563NUNVIOQCPYGEHXNAXMNRIDYI X-MailFrom: m.carrara@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 VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: On Thu Sep 24, 2026 at 3:48 PM CEST, Alfonso Kuen wrote: > Hi Max, > > I gave v3 a spin with a real third-party plugin, the TrueNAS storage > plugin (iSCSI and NVMe/TCP, PVE::Storage::Custom::TrueNASPlugin), on a > single-node PVE 9.2 test host. > > Setup: the 17 patches applied cleanly with git am on pve-common > 9943f6f, pve-storage 9b5a5a5, proxmox-widget-toolkit 5faa913 and > pve-manager 122efff2. Building the widget toolkit needed > proxmox-biome, which is not in pve-no-subscription yet; I built it > from git.proxmox.com, which in turn needed rustc/cargo from > trixie-backports (the 1.85 in trixie is too old for one of the > vendored crates). > > On the plugin side I only added a `title` to each of its 46 > properties and an 'advanced-properties' hash (23 tuning knobs) - not a > line of JavaScript. What I checked: > > - The type shows up in Datacenter -> Storage -> Add next to the > built-in ones, and the form is built from the schema with the titles. > - Its four 'sensitive-properties' (API key, CHAP password, two NVMe > DH-HMAC-CHAP secrets) render as password fields and show > "Unchanged" on edit, never the stored value. > - The advanced knobs stay behind the Advanced toggle. > - `fixed` properties are editable on create and display-only on edit. > - Add and edit round-trip through the API with the secrets ending up > in the plugin's /etc/pve/priv files, not in storage.cfg. > > I didn't hit any problem with this plugin beyond what Thomas already > reported. Amazing, thank you very much for your thorough testing! It's greatly appreciated. > > One thought for later rather than for this series: the next gap for > a plugin like this one is operational rather than configuration - > per-volume actions and plugin-specific commands (for us, adopting > snapshots taken on the array into the guest config). Some way for a > plugin to declare such actions would round this out nicely. Thanks for the suggestions! Similar things already exist as ideas in my head, but I'm not sure how to properly integrate those things for plugin authors just yet. First step is getting this merged anyhow. > > Tested-by: Alfonso Kuen > > Thanks for the work on this. > > Alfonso Thanks for testing this again! - Max