67 lines
1.2 KiB
Perl
Executable File
67 lines
1.2 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
|
|
# Note: Test replication job failure
|
|
|
|
use strict;
|
|
use warnings;
|
|
use JSON;
|
|
|
|
use lib ('.', '../..');
|
|
|
|
use Test::MockModule;
|
|
use ReplicationTestEnv;
|
|
|
|
use PVE::Tools;
|
|
|
|
$ReplicationTestEnv::mocked_nodename = 'node1';
|
|
|
|
my $pve_replication_module = Test::MockModule->new('PVE::Replication');
|
|
$pve_replication_module->mock(
|
|
replicate => sub { die "faked replication error\n"; });
|
|
|
|
my $testjob = {
|
|
'type' => 'local',
|
|
'target' => 'node1',
|
|
'guest' => 900,
|
|
};
|
|
|
|
$ReplicationTestEnv::mocked_replication_jobs = {
|
|
job_900_to_node2 => {
|
|
'type' => 'local',
|
|
'target' => 'node2',
|
|
'guest' => 900,
|
|
},
|
|
job_900_to_node1 => {
|
|
'type' => 'local',
|
|
'target' => 'node1', # local node, job should be skipped
|
|
'guest' => 900,
|
|
},
|
|
};
|
|
|
|
$ReplicationTestEnv::mocked_vm_configs = {
|
|
900 => {
|
|
node => 'node1',
|
|
snapshots => {},
|
|
ide0 => 'local-lvm:vm-900-disk-1,size=4G',
|
|
memory => 512,
|
|
ide2 => 'none,media=cdrom',
|
|
},
|
|
};
|
|
|
|
ReplicationTestEnv::setup();
|
|
|
|
my $ctime = 1000;
|
|
|
|
my $status;
|
|
|
|
ReplicationTestEnv::openlog();
|
|
|
|
for (my $i = 0; $i < 120; $i++) {
|
|
ReplicationTestEnv::track_jobs($ctime);
|
|
$ctime += 60;
|
|
}
|
|
|
|
ReplicationTestEnv::commit_log();
|
|
|
|
exit(0);
|