From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 76F698C87F for ; Thu, 3 Nov 2022 11:28:48 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 4F75F2DC3D for ; Thu, 3 Nov 2022 11:28:18 +0100 (CET) Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [IPv6:2a00:1450:4864:20::535]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Thu, 3 Nov 2022 11:28:17 +0100 (CET) Received: by mail-ed1-x535.google.com with SMTP id v27so2306628eda.1 for ; Thu, 03 Nov 2022 03:28:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linbit-com.20210112.gappssmtp.com; s=20210112; h=user-agent:content-disposition:mime-version:message-id:subject:to :from:date:from:to:cc:subject:date:message-id:reply-to; bh=mzsscP0VuxazouT/hlnKM/flIzgSse9FlW/nMEN6PI0=; b=RtmtkZiVomD7cciNK97WUReMtQj4fBOfCQBr9Ti4Xj6EM/nJaT7fU1Wc+oO9qPOvrO BomuV0rz+Wn3J9WSzz5TOHnGilPnCeQqvKGCOxV4xk8pKoHqvSxTmmTSNyNoMVVpeWwn cjxN7eCX1VMdpAZQ9x0O2AA8Rc669W4/y/Wp4QkiThq9BlcH3GayTbziKKq5DX3sgY5K I5rFTKj3dIG8c9QxEgMDl4cIoQmIsChduvR/8ftarILVy6t5/zc9zZiZIkXioU/OttQ+ 0/oj0h2Ey3jmH+gookq0ogSauSgZ5sFKdZF7fqXpz2NxMIl2rz0uzMcHI01hIrdePeB+ GJYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=user-agent:content-disposition:mime-version:message-id:subject:to :from:date:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=mzsscP0VuxazouT/hlnKM/flIzgSse9FlW/nMEN6PI0=; b=U66G1n/Gjrc1YNvt8sMNOlptmhGRIn1FHKQkuKEi0D3R1/c9hKLRgiaJvzGOxik7OY OFPfXY+NEqsOrq1LNIbK9CPTPhZ4jsG0fpElEZmvSSCO/9NaqvttrtlBVrscxc8PJJmL Odyo6pfvF8GpjQ2gsaRQvRnMbNeHac/sFgYVLlQlbEHPQHIEMmk6grqRJ3f8I+JHpYWR GFfnEwf6MKRVG+y9VbqBjX6Kupb3xqZaSRdck+qvFA3/NGLlrEcphyz/o0ogCKtxnDXB wAnE80obeAqwQRH7JMQbP2XcnQ64G+8Jl2ZJP6/Bv8WrckCLWXmC5NCq1/DqlaaUK2ul jl4A== X-Gm-Message-State: ACrzQf1FfgW7ctOkigvpuo36BF+svxF5OAXofgcVle+ckR5lFhiNkEiW r/kV1HEM91wpmcaHKKYI8bShR5WjALHtZNwY X-Google-Smtp-Source: AMsMyM5LnEfLcXUZm9buan1Wpr/0BQgD/onjnAKl4dSoX2W+aRtK3mp0Y1OpdPCY1GoAyhgwVIuU9Q== X-Received: by 2002:a05:6402:1505:b0:463:1a0c:4db8 with SMTP id f5-20020a056402150500b004631a0c4db8mr24901656edw.70.1667471291134; Thu, 03 Nov 2022 03:28:11 -0700 (PDT) Received: from localhost (static.20.139.203.116.clients.your-server.de. [116.203.139.20]) by smtp.gmail.com with ESMTPSA id u10-20020a1709061daa00b0073cf6ec3276sm291666ejh.207.2022.11.03.03.28.10 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 03 Nov 2022 03:28:10 -0700 (PDT) Date: Thu, 3 Nov 2022 11:28:09 +0100 From: Roland Kammerer To: pve-devel@lists.proxmox.com Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/2.0.5 (2021-01-21) X-SPAM-LEVEL: Spam detection results: 0 AWL -0.000 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% 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 RCVD_IN_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] pve-manager/www: API for external plugins? X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Nov 2022 10:28:48 -0000 Dear PVE devs, I'm the maintainer of the linstor-proxmox plugin and thanks to your storage plugin API we have a strong FLOSS and customer user base. What would be nice for our users is better integration in the web GUI, especially in "Datacenter -> Storage -> Add". I'm not a web dev at all, I just patched in a new entry into pvemanagerlib.js. From what I see in the Makefile that itself is just the concatenated version of several .js files. Would it be possible to have an extra "plugin.js" that then just includes all .js from some /i/dont/know/plugins/ directory? I also saw that there is at least one dict that glues things together (storageSchema in Utils.js), so there probably would be some need to "register" external plugins into these data structures. And that is where I stop showing my entire lack of web development knowledge :). Could you provide some kind of API that allows external plugins to integrate into the GUI? Or maybe it even exists and I did not see it? Thanks, rck