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 D00911FF09B for ; Mon, 28 Sep 2026 09:15:08 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id B5021216F9; Mon, 28 Sep 2026 09:14:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idkmanager.com; s=google; t=1790257701; x=1790862501; darn=lists.proxmox.com; h=mime-version:content-transfer-encoding:content-type:message-id:date :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=dwyijOuWpEmJD9BsqC0jGJovjvJhCn/OdXhLBfOdaNE=; b=p22xArXekPhYJ6kvaU0P3pCKlauEvJ//sGy0ErRo6BSi/LooIHrTUUL/1BMbE6Kzo8 75iT3zHcCoTS5njBqvfGJvS7SRuud3xXteEQx2xaw3v01+dZjF1WIKClexjkT3ZUkT3f O/G/E+GcQKWzsf/Fw1HXcHYqKnK6bKUfyOsT/8Oa2QQQibvo82Dq+TZglFUVaT2dBmWI dOCWAdKJYJ1j8liuDCfDpeP9E3JUasFaNtUUAHGVKJEPoKRn63RF1SWZ1SRSx+V/VIuK nybSmspeoyXuNn8ZhIOFJBr57gL7ooKpewQ6YS/zufgpFUpas0rCmn0Ir6rtn1sdZSQU PR/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790257701; x=1790862501; h=mime-version:content-transfer-encoding:content-type:message-id:date :references:in-reply-to:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=dwyijOuWpEmJD9BsqC0jGJovjvJhCn/OdXhLBfOdaNE=; b=zBSI1T+wJ6IpXPCFsiAy6irC+0468QjzBi/szudyDpSQFViVct+T5mJ+84o9TUxxTe sptRJfiUO25MY2V4qURzOOuN3gaEvvAeQIuWC3++/jKdoLW67HhDtfkPzIX3TLqWZLId gavEl5WshZR2RH+dm76qOhER+M3Js34qXTgtAZUYN69OE+QkF+C/Cq9Bzi+YFDjRKFXS LFRegmlmgnc0mFF72pdjmPre35f0uEqn5wOoWRVL2pqQ87JDTo/6zZ6wF09HUDs4JIxP IH3JyPv7+/Tp2vWbe1qI5SvmiEpQo++rnhvJC0RqX8IKiyMmu/2DqWgEkfPRcoXsgFBi Pd0A== X-Gm-Message-State: AFuF++kS3v/MkhiDb63vnr5h5GPuvhClN9RNipHuCCmTcNYI3toJs8A0 YA3YjhP3vy5uIErUni1fAwIYcbT9DfRo1tPQ/8Nq8qrxKKu/88vR0I7bl/1hieHdDMePN/7miVH ft/I0W48= X-Gm-Gg: AYBFou1Dq4ZnQBvh+We7L+ft8EjHhO5qY5KG2isK7BbWKfHjshLPP9DwYhll0O0Zb2l +ZqVfzSsmA7AYY1eZf1LhpQqg8oB0j83IUOrxYs5Dy7osHmyTefYcMQ4dY0kbfvTN7zRSFA4gZ5 bLYe1dAYUAKAa8457/+/0x6QdLExQEvne3Dqf4pu3KqxVoBrmjAqr9KHb29yMGXKIk432jwWSr/ qKV5WYN7e6kMbFwDwN2wTHV+0NRFGGKpmj2UkwN4nfyADpUrCnTcmtHrCgvJWpZFh/8cNFOcyGc QsZZiJ1pfDtVoKMPzepHZANNv75+VvpHuKJE1hrloCCIRHeJDSrMYz6lif6m3jCIHEFNsUoMGGQ cQkL4KZkZt2H7pWOqhLc8pTLXgBZProKcw6twS7zC7Mpo2oD3RzMPdx0xgEqiG5M1N010lqDMyx qjAufW1kQKn7iOzZ+MXT0iaN9jxEci2YHEpV2CZM3w/GMOpwqAWiEqcFp2auN93OEFQSMkvRXLK TRziFIRIIKb2DVexMoLVBj/SHPz7+n7lWMV51gcdq4gsYyn3HooGaY= X-Received: by 2002:a05:6122:208b:b0:5c9:a60c:273a with SMTP id 71dfb90a1353d-5cb0ba68a7fmr1718641e0c.18.1790257701534; Thu, 24 Sep 2026 06:48:21 -0700 (PDT) From: Alfonso Kuen To: pve-devel@lists.proxmox.com Subject: Re: [PATCH common/manager/proxmox-widget-toolkit/storage/storage-plugin-examples v3 00/17] GUI Support for Custom Storage Plugins In-Reply-To: <20260727143445.513900-1-m.carrara@proxmox.com> References: <20260727143445.513900-1-m.carrara@proxmox.com> Date: Thu, 24 Sep 2026 08:48:20 -0500 Message-ID: <179025770001.167092.13101306988170112450@idkmanager.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.106 Adjusted score from AWL reputation of From: address DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record X-MailFrom: gerencia@idkmanager.com X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation Message-ID-Hash: DR4KKI7JRQ4CE5ND7AQNJIE7BBXMV6YQ X-Message-ID-Hash: DR4KKI7JRQ4CE5ND7AQNJIE7BBXMV6YQ X-Mailman-Approved-At: Mon, 28 Sep 2026 09:14:42 +0200 X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: 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. 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. Tested-by: Alfonso Kuen Thanks for the work on this. Alfonso