From 6d9f6f05793b72027eec9bdaf8ca95b0b3f82cd5 Mon Sep 17 00:00:00 2001 From: Dmitry Ukov Date: Mon, 28 Nov 2016 12:17:35 +0300 Subject: [PATCH] Whitelist rules bulk deletion User should be able to specify list of rule IDs to delete Change-Id: I500aa50af377947e3d59b3dff179ebe3734cf988 --- README.md | 2 +- doc/cli.md | 4 ++-- fuel_external_git/fuelclient_audit.py | 10 ++++++---- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 07f9b4e..6ca2bfd 100644 --- a/README.md +++ b/README.md @@ -162,7 +162,7 @@ fuel2 audit whitelist show These rules can be managed by following commands: ``` fuel2 audit whitelist add --task --rule -fuel2 audit whitelist delete +fuel2 audit whitelist delete [ ...] fuel2 audit whitelist load fromfile ``` diff --git a/doc/cli.md b/doc/cli.md index 7770926..9b12c9f 100644 --- a/doc/cli.md +++ b/doc/cli.md @@ -70,9 +70,9 @@ To add a rule: fuel2 audit whitelist add --task --rule ``` -To delete a rule: +To delete a rule or set of rules: ``` -fuel2 audit whitelist delete +fuel2 audit whitelist delete [ ... ] ``` To add rules from YAML file: diff --git a/fuel_external_git/fuelclient_audit.py b/fuel_external_git/fuelclient_audit.py index fd17553..0a3eea7 100644 --- a/fuel_external_git/fuelclient_audit.py +++ b/fuel_external_git/fuelclient_audit.py @@ -309,15 +309,17 @@ class WhitelistRuleDelete(command.Command): parser = super(WhitelistRuleDelete, self).get_parser(prog_name) parser.add_argument('rule_id', type=int, + nargs='+', help='Rule ID to delete') return parser def take_action(self, parsed_args): - rule_id = parsed_args.rule_id + rule_ids = parsed_args.rule_id - fc_client.delete_request( - '/clusters/changes-whitelist/{rule}'.format(rule=rule_id) - ) + for rule in rule_ids: + fc_client.delete_request( + '/clusters/changes-whitelist/{rule}'.format(rule=rule) + ) return ((), {})