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 247A495092 for ; Tue, 28 Feb 2023 11:54:46 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0265E5AAA for ; Tue, 28 Feb 2023 11:54:16 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (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 firstgate.proxmox.com (Proxmox) with ESMTPS for ; Tue, 28 Feb 2023 11:54:15 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id ED93048BA6 for ; Tue, 28 Feb 2023 11:54:14 +0100 (CET) From: Fiona Ebner To: pve-devel@lists.proxmox.com Date: Tue, 28 Feb 2023 11:54:07 +0100 Message-Id: <20230228105410.51078-2-f.ebner@proxmox.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230228105410.51078-1-f.ebner@proxmox.com> References: <20230228105410.51078-1-f.ebner@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.003 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [abstractconfig.pm] Subject: [pve-devel] [PATCH guest-common 1/1] abstract config: add method to calculate derived properties from a config 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: Tue, 28 Feb 2023 10:54:46 -0000 HA manager currently needs to know about internal details about the configs and how the properties are calculated. With this method, those details are abstracted away, allowing to change the configuration structure. In particular, QemuConfig's 'memory' can be turned into a property string without HA manager needing to know about it (once HA manager switched to using this mehtod). Signed-off-by: Fiona Ebner --- src/PVE/AbstractConfig.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/PVE/AbstractConfig.pm b/src/PVE/AbstractConfig.pm index a0c0bc6..3d2c255 100644 --- a/src/PVE/AbstractConfig.pm +++ b/src/PVE/AbstractConfig.pm @@ -1158,6 +1158,15 @@ sub snapshot_rollback { $class->lock_config($vmid, $updatefn); } +# Calculate a derived property from a configuration. Derived properties are: +# max-cpu - maximum amount of CPUs the guest can currently use (can be a fraction) +# max-memory - maximum amount of memory the guest can currently use +sub get_derived_property { + my ($class, $conf, $name) = @_; + + die "implement me - abstract method\n"; +} + # bash completion helper sub snapshot_list { -- 2.30.2