]> git.proxmox.com Git - pve-storage.git/commitdiff
PVE::API2::Storage::Replication->jobs(): return array
authorDietmar Maurer <dietmar@proxmox.com>
Fri, 5 May 2017 08:54:10 +0000 (10:54 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Fri, 5 May 2017 08:54:10 +0000 (10:54 +0200)
PVE/API2/Storage/Replication.pm
PVE/CLI/pvesr.pm

index 9123f223a7cc87cdbebc558992ba0f8074bebbf8..ab52b01b48959e58f2a17b806ddef46cbe03127e 100644 (file)
@@ -55,11 +55,20 @@ __PACKAGE__->register_method ({
            node => get_standard_option('pve-node'),
        },
     },
-    returns => { type => 'object' },
+    returns => {
+       type => 'array',
+       items => {
+           type => "object",
+           properties => {},
+       },
+       links => [ { rel => 'child', href => "{vmid}" } ],
+    },
     code => sub {
        my ($param) = @_;
 
-       return PVE::ReplicationTools::get_all_jobs();
+       my $jobs = PVE::ReplicationTools::get_all_jobs();
+
+       return PVE::RESTHandler::hash_to_array($jobs, 'vmid');
     }});
 
 1;
index 0f4f5c7c75929a40a8a8bed129756fc4b8a6504e..72b18e5f090d3730567cbbb467e913d89206c11c 100644 (file)
@@ -22,16 +22,16 @@ sub setup_environment {
 }
 
 my $print_job_list = sub {
-    my ($conf) = @_;
+    my ($list) = @_;
 
     printf("%-10s%-20s%-20s%-5s%-10s%-5s\n",
           "VMID", "DEST", "LAST SYNC","IVAL", "STATE", "FAIL");
 
-    foreach my $vmid (sort keys %$conf) {
-       my $job = $conf->{$vmid};
+    foreach my $job (sort { $a->{vmid} <=> $b->{vmid} } @$list) {
+
        my $timestr = strftime("%Y-%m-%d_%H:%M:%S", localtime($job->{lastsync}));
 
-       printf("%-9s ", $vmid);
+       printf("%-9s ", $job->{vmid});
        printf("%-19s ", $job->{tnode});
        printf("%-19s ", $timestr);
        printf("%-4s ", $job->{interval});