all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Chiranth J S <Chiranth.JS@datacore.com>
To: "pve-devel@lists.proxmox.com" <pve-devel@lists.proxmox.com>
Cc: Vikash Ray <Vikash.Ray@datacore.com>,
	Prajwal Shetty <prajwal.shetty@datacore.com>
Subject: Supported way to extend the PVE web UI for a third-party package?
Date: Mon, 13 Jul 2026 10:26:16 +0000	[thread overview]
Message-ID: <CH3PR11MB849513C3D52AC9211EA54B828AFA2@CH3PR11MB8495.namprd11.prod.outlook.com> (raw)

Hello,

I work at DataCore SANsymphony team. We ship a SANsymphony storage backend for PVE on the supported PVE::Storage::Plugin contract,  presenting vDisks over iSCSI. That side has worked well and is in production with customers.

We also have a prototype that adds a native-feeling UI on top of it (a tab with vDisk aliases, snapshot/rollback, resize and performance). Since we couldn't find an official UI-extension hook, it currently works by patching two pve-manager files at install time — adding a <script> tag to index.html.tpl and a register_method for a /nodes/<node>/datacore/... route in PVE/API2/Nodes.pm — with a dpkg trigger to re-apply after upgrades.

We understand the long-standing guidance that features should be added "directly, no plugin," and we're weighing whether to productize this. Before we decide, two questions:


  1.
Is there any supported or planned mechanism to extend the PVE web UI (add a view/tab) or register a nodes/<node>/... API2 route from a third-party package — anything analogous to the storage plugin contract, but for the frontend?
  2.
If not, is in-place patching of index.html.tpl / Nodes.pm considered an acceptable approach (several community projects do this), or does it put a node in an unsupported state from your perspective? Is there a pattern you'd recommend instead?


A clear "there's no supported hook, don't patch core files" is just as useful to us as a yes.
Thanks for your time, and for the storage plugin API.

Best regards,
Chiranth JS





             reply	other threads:[~2026-07-13 11:59 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-13 10:26 Chiranth J S [this message]
2026-07-13 13:01 ` Supported way to extend the PVE web UI for a third-party package? Dominik Csapak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CH3PR11MB849513C3D52AC9211EA54B828AFA2@CH3PR11MB8495.namprd11.prod.outlook.com \
    --to=chiranth.js@datacore.com \
    --cc=Vikash.Ray@datacore.com \
    --cc=prajwal.shetty@datacore.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal