all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
	Fiona Ebner <f.ebner@proxmox.com>
Subject: Re: [pve-devel] [PATCH qemu-server 2/3] config: introduce a flag to prevent writing the configuration
Date: Fri, 24 Jan 2025 11:18:33 +0100	[thread overview]
Message-ID: <7d2e0989-3d6e-40b5-b1b8-bd040d7c94a8@proxmox.com> (raw)
In-Reply-To: <20250124100811.32895-3-f.ebner@proxmox.com>

Am 24.01.25 um 11:08 schrieb Fiona Ebner:
> To be used in the context of template backup, where a minimized
> temporary configuration is created to start the VM in 'prelaunch'
> mode. Issue a warning, so that code paths where this happens will be
> noted and can be evaluated and adapted.
> 
> Suggested-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
> Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
> ---
>  PVE/QemuConfig.pm | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/PVE/QemuConfig.pm b/PVE/QemuConfig.pm
> index ffdf9f03..a2156abb 100644
> --- a/PVE/QemuConfig.pm
> +++ b/PVE/QemuConfig.pm
> @@ -13,6 +13,7 @@ use PVE::QemuServer::Monitor qw(mon_cmd);
>  use PVE::QemuServer;
>  use PVE::QemuServer::Machine;
>  use PVE::QemuServer::Memory qw(get_current_memory);
> +use PVE::RESTEnvironment qw(log_warn);
>  use PVE::Storage;
>  use PVE::Tools;
>  use PVE::Format qw(render_bytes render_duration);
> @@ -561,6 +562,17 @@ sub get_derived_property {
>      }
>  }
>  
> +sub write_config {
> +    my ($class, $vmid, $conf) = @_;
> +
> +    if ($conf->{'no-write-config'}) {
> +	log_warn("refusing to write temporary configuration with 'no-write-config' flag");

hmm, mixing config values and metadata for control flow/debugging is
always getting hairy fast, making the config a blessed object with
method for QEMU stuff and a clean separation of config data and such
flags and other non-config data info might be a better alternative,
but demanding that now would add a ton of scope and delay the fix
significantly, so fine to go this way as stop gap.

On a v2 or on applying adding a (one of) fixme/todo/hack comment to
note that this is not ideal, to minimize the chance that doing this
sort of thing spreads, could be good though.

> +	return;
> +    }
> +
> +    return $class->SUPER::write_config($vmid, $conf);
> +}
> +
>  # END implemented abstract methods from PVE::AbstractConfig
>  
>  sub has_cloudinit {



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

  reply	other threads:[~2025-01-24 10:19 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-24 10:08 [pve-devel] [PATCH-SERIES qemu-server 0/3] fix #6007: fix PBS template backup for certain configurations Fiona Ebner
2025-01-24 10:08 ` [pve-devel] [PATCH qemu-server 1/3] backup: also restore VM power state for early failures Fiona Ebner
2025-01-24 10:08 ` [pve-devel] [PATCH qemu-server 2/3] config: introduce a flag to prevent writing the configuration Fiona Ebner
2025-01-24 10:18   ` Thomas Lamprecht [this message]
2025-01-24 10:25     ` Fiona Ebner
2025-01-24 10:08 ` [pve-devel] [PATCH qemu-server 3/3] fix #6007: template backup: use minimized configuration for handling the full vm start Fiona Ebner
2025-01-24 10:23   ` Fiona Ebner
2025-01-24 10:47     ` Fiona Ebner

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=7d2e0989-3d6e-40b5-b1b8-bd040d7c94a8@proxmox.com \
    --to=t.lamprecht@proxmox.com \
    --cc=f.ebner@proxmox.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