]> git.proxmox.com Git - pve-manager.git/commitdiff
api: backup info: rework get_included_vmids code style
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 15 Nov 2022 13:04:29 +0000 (14:04 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 15 Nov 2022 13:07:39 +0000 (14:07 +0100)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
PVE/API2/Cluster/BackupInfo.pm

index bea0e46037861e8356ca6bcd9f340c67e96fc89f..2aa1e1f2a6b77f908784e08d0b94dbd6235a8511 100644 (file)
@@ -18,26 +18,18 @@ use PVE::VZDump::Common;
 use base qw(PVE::RESTHandler);
 
 sub get_included_vmids {
-    my $vzconf = cfs_read_file('vzdump.cron');
+    my $legacy_vzdump_job_cfg = cfs_read_file('vzdump.cron');
+    my $legacy_jobs = $legacy_vzdump_job_cfg->{jobs} || [];
 
-    my $all_jobs = $vzconf->{jobs} || [];
-    my @all_vmids = ();
+    my $jobs = cfs_read_file('jobs.cfg');
 
-    for my $job (@$all_jobs) {
+    my $all_vmids = {};
+    for my $job ($legacy_jobs->@*, grep { $_->{type} eq 'vzdump' } values $jobs->{ids}->%*) {
        my $job_included_guests = PVE::VZDump::get_included_guests($job);
-       push @all_vmids, ( map { @{$_} } values %{$job_included_guests} );
+       $all_vmids->{$_} = 1 for map { $_->@* } values %{$job_included_guests};
     }
 
-    my $vzjobs = cfs_read_file('jobs.cfg');
-
-    for my $job (values %{$vzjobs->{ids}}) {
-       next if $job->{type} ne 'vzdump';
-
-       my $job_included_guests = PVE::VZDump::get_included_guests($job);
-       push @all_vmids, ( map { @{$_} } values %{$job_included_guests} );
-    }
-
-    return { map { $_ => 1 } @all_vmids };
+    return $all_vmids;
 }
 
 __PACKAGE__->register_method({