[pve-devel] [PATCH v3 manager 2/5] task index: allow filtering by task type
Fabian Grünbichler
f.gruenbichler at proxmox.com
Wed Jan 23 14:56:32 CET 2019
convenience filter if caller is only interested in certain actions
Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
Tested-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
---
Notes:
unchanged from v1
PVE/API2/Tasks.pm | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/PVE/API2/Tasks.pm b/PVE/API2/Tasks.pm
index 0f2a622b..8cdc534d 100644
--- a/PVE/API2/Tasks.pm
+++ b/PVE/API2/Tasks.pm
@@ -49,6 +49,11 @@ __PACKAGE__->register_method({
optional => 1,
description => "Only list tasks from this user.",
},
+ typefilter => {
+ type => 'string',
+ optional => 1,
+ description => 'Only list tasks of this type (e.g., vzstart, vzdump).',
+ },
vmid => get_standard_option('pve-vmid', {
description => "Only list tasks for this VM.",
optional => 1,
@@ -100,6 +105,7 @@ __PACKAGE__->register_method({
my $start = $param->{start} // 0;
my $limit = $param->{limit} // 50;
my $userfilter = $param->{userfilter};
+ my $typefilter = $param->{typefilter};
my $errors = $param->{errors} // 0;
my $source = $param->{source} // 'archive';
@@ -114,6 +120,8 @@ __PACKAGE__->register_method({
return 1 if $userfilter && $task->{user} !~ m/\Q$userfilter\E/i;
return 1 if !($auditor || $user eq $task->{user});
+ return 1 if $typefilter && $task->{type} ne $typefilter;
+
return 1 if $errors && $task->{status} && $task->{status} eq 'OK';
return 1 if $param->{vmid} && (!$task->{id} || $task->{id} ne $param->{vmid});
--
2.20.1
More information about the pve-devel
mailing list