[pve-devel] [PATCH pve-guest-common 1/1] Add abstract methods for pre/post-migrate hooks

Thomas Lamprecht t.lamprecht at proxmox.com
Mon Sep 26 17:27:59 CEST 2022


Am 22/09/2022 um 16:13 schrieb Stefan Hanreich:
> Signed-off-by: Stefan Hanreich <s.hanreich at proxmox.com>
> ---
>  src/PVE/AbstractMigrate.pm | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 

for the record, if we do it like this (not much rationale given in the commit message)
this breaks containers and qemu-server without such an implementation and needs the
respective Breaks/Depends entries in d/control (which you cannot add as you cannot
predict the exact version this would get actually added).

> diff --git a/src/PVE/AbstractMigrate.pm b/src/PVE/AbstractMigrate.pm
> index d90e5b7..5e03488 100644
> --- a/src/PVE/AbstractMigrate.pm
> +++ b/src/PVE/AbstractMigrate.pm
> @@ -178,6 +178,8 @@ sub migrate {
>  	        "public key authentication\n" if $@;
>  	}
>  
> +	$self->pre_migration_hooks($self->{vmid});
> +
>  	&$eval_int($self, sub { $self->phase1($self->{vmid}); });
>  	my $err = $@;
>  	if ($err) {
> @@ -228,6 +230,8 @@ sub migrate {
>  	    $self->log('err', $err);
>  	    $self->{errors} = 1;
>  	}
> +
> +	$self->post_migration_hooks($self->{vmid});
>      })};
>  
>      my $err = $@;
> @@ -368,4 +372,14 @@ sub get_bwlimit {
>      return $bwlimit;
>  }
>  
> +sub pre_migration_hooks {
> +    my ($self, $vmid) = @_;
> +    die "abstract method - implement me";
> +}
> +
> +sub post_migration_hooks {
> +    my ($self, $vmid) = @_;
> +    die "abstract method - implement me";
> +}
> +
>  1;






More information about the pve-devel mailing list