From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id 429531FF16F
	for <inbox@lore.proxmox.com>; Tue, 13 May 2025 10:54:03 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 48A7A1C1BC;
	Tue, 13 May 2025 10:54:23 +0200 (CEST)
Date: Tue, 13 May 2025 10:53:49 +0200 (CEST)
From: =?UTF-8?Q?Fabian_Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Message-ID: <1131042857.14243.1747126429341@webmail.proxmox.com>
In-Reply-To: <mailman.366.1747114488.394.pve-devel@lists.proxmox.com>
References: <mailman.366.1747114488.394.pve-devel@lists.proxmox.com>
MIME-Version: 1.0
X-Priority: 3
Importance: Normal
X-Mailer: Open-Xchange Mailer v7.10.6-Rev75
X-Originating-Client: open-xchange-appsuite
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.046 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 0.001 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 0.001 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 0.001 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
Subject: Re: [pve-devel] TrueNAS Storage Plugin
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>


> Lorne Guse via pve-devel <pve-devel@lists.proxmox.com> hat am 13.05.2025 07:34 CEST geschrieben:
> I'm working on an update to https://github.com/TheGrandWazoo/freenas-proxmox
> 
> My repo can be found here: https://github.com/boomshankerx/proxmox-truenas
> 
> I'm considering writing a pure TrueNAS plugin to fully utilize their WebSocket API. I think
> 
> I have a reasonable grasp on the existing storage plugins for ZFS over ISCSI however I'm not sure how to go about developing the UI component for a brand new plugin.
> 
> The exiting plugins above inject some UI code via patch to accommodate some extra UI components. I imagine that this would be the case if I were to build a TrueNAS plugin from the ground up.
> 
> I'd like some suggestions if there are any to give.

the rough plan (as previously discussed on this list, CCing Roland who might be interested as well)
would be for the plugin to provide a "UI schema", and the UI code to derive a basic form for adding
and editing the storage configuration based on that.

we are basically waiting for some third-party plugin developer to drive this feature together with
us - if you want to step up to do that it would be great!

a rough sketch:
- plugin gets a new property defining how each of its options should be presented on the UI
- an endpoint is added that returns the existing storage types + their schema
- JS code gets written that calls that endpoint and generates the 'add' and 'edit' windows

what's needed from the plugin dev side is mainly feedback on how the schema could/should
look like, what kind of control would be desirable, and of course, validation of the
implementation once it exists.

what we definitely don't want is to provide some sort of hookpoint for arbitrary JS code,
that is far too brittle.

hope this helps,
Fabian


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel