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 6B68EA29E7 for ; Tue, 20 Jun 2023 10:35:56 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 4B6A231BC1 for ; Tue, 20 Jun 2023 10:35:56 +0200 (CEST) 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, 20 Jun 2023 10:35:55 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id EF2A3407DC for ; Tue, 20 Jun 2023 10:35:54 +0200 (CEST) Date: Tue, 20 Jun 2023 10:35:48 +0200 From: Fabian =?iso-8859-1?q?Gr=FCnbichler?= To: Proxmox VE development discussion References: <20230616113345.65996-1-f.ebner@proxmox.com> <20230616113345.65996-10-f.ebner@proxmox.com> In-Reply-To: <20230616113345.65996-10-f.ebner@proxmox.com> MIME-Version: 1.0 User-Agent: astroid/0.16.0 (https://github.com/astroidmail/astroid) Message-Id: <1687250028.wwgk7kylta.astroid@yuna.none> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-SPAM-LEVEL: Spam detection results: 0 AWL 0.071 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 SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record T_SCC_BODY_TEXT_LINE -0.01 - URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [nodes.pm, proxmox.com] Subject: Re: [pve-devel] [PATCH manager 1/1] api: nodes: allow setting HA shutdown policy during shutdown/reboot 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, 20 Jun 2023 08:35:56 -0000 On June 16, 2023 1:33 pm, Fiona Ebner wrote: > Increases flexibility/user-friendliness. >=20 > Suggested-by: Thomas Lamprecht > Signed-off-by: Fiona Ebner > --- >=20 > (Build-)dependency bump for libpve-cluster-perl needed. >=20 > Dependency bump for ha-manager needed (to have the runtime dir exist > and LRM honor the new param). >=20 > PVE/API2/Nodes.pm | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) >=20 > diff --git a/PVE/API2/Nodes.pm b/PVE/API2/Nodes.pm > index 9269694d..1cb83af5 100644 > --- a/PVE/API2/Nodes.pm > +++ b/PVE/API2/Nodes.pm > @@ -8,7 +8,7 @@ use Digest::SHA; > use Filesys::Df; > use HTTP::Status qw(:constants); > use JSON; > -use POSIX qw(LONG_MAX); > +use POSIX qw(ENOENT LONG_MAX); > use Time::Local qw(timegm_nocheck); > use Socket; > use IO::Socket::SSL; > @@ -557,12 +557,21 @@ __PACKAGE__->register_method({ > type =3D> 'string', > enum =3D> [qw(reboot shutdown)], > }, > + 'shutdown-policy' =3D> get_standard_option('pve-ha-shutdown-policy'= , { optional =3D> 1 }), > }, > }, > returns =3D> { type =3D> "null" }, > code =3D> sub { > my ($param) =3D @_; > =20 > + my $sp_override_fn =3D '/run/pve-ha-lrm/shutdown-policy.local-override'= ; > + if ($param->{'shutdown-policy'}) { > + eval { PVE::Tools::file_set_contents($sp_override_fn, $param->{'shu= tdown-policy'}); }; > + die "could not write shutdown policy override to $sp_override_fn - = $@" if $@; > + } else { > + unlink $sp_override_fn or $! =3D=3D ENOENT or die "unable to remove= $sp_override_fn - $!"; > + } should this part (setting or removing the override if one is set) require `Sys.Modify` (like setting the policy via datacenter.cfg would) in addition to `Sys.PowerMgmt` that the endpoint itself requires? > + > if ($param->{command} eq 'reboot') { > system ("(sleep 2;/sbin/reboot)&"); > } elsif ($param->{command} eq 'shutdown') { > --=20 > 2.39.2 >=20 >=20 >=20 > _______________________________________________ > pve-devel mailing list > pve-devel@lists.proxmox.com > https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel >=20 >=20 >=20