summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomas Babej <tbabej@redhat.com>2014-08-05 09:12:24 +0200
committerPetr Viktorin <pviktori@redhat.com>2014-09-17 09:36:27 +0200
commit1f8f762b84e7448cb279b6db5158f93b5f517827 (patch)
tree3054dc72edc6655316baedfdd908b2ec57a5f384
parent9ca5a4e42084ba43e106fa3be9dac9965216e710 (diff)
downloadfreeipa-1f8f762b84e7448cb279b6db5158f93b5f517827.zip
freeipa-1f8f762b84e7448cb279b6db5158f93b5f517827.tar.gz
freeipa-1f8f762b84e7448cb279b6db5158f93b5f517827.tar.xz
ipalib: host_del: Extend LDAPDelete's takes_options instead of overriding
The host-del command did not accept --continue option, since the takes_options was overriden and did not take the options from LDAPDelete. Fix the behaviour. https://fedorahosted.org/freeipa/ticket/4473 Reviewed-By: Jan Cholasta <jcholast@redhat.com>
-rw-r--r--API.txt3
-rw-r--r--ipalib/plugins/host.py2
-rw-r--r--ipatests/test_xmlrpc/test_host_plugin.py5
3 files changed, 4 insertions, 6 deletions
diff --git a/API.txt b/API.txt
index 4fa2755..bbd0f50 100644
--- a/API.txt
+++ b/API.txt
@@ -1819,8 +1819,9 @@ output: Output('completed', <type 'int'>, None)
output: Output('failed', <type 'dict'>, None)
output: Entry('result', <type 'dict'>, Gettext('A dictionary representing an LDAP entry', domain='ipa', localedir=None))
command: host_del
-args: 1,2,3
+args: 1,3,3
arg: Str('fqdn', attribute=True, cli_name='hostname', multivalue=True, primary_key=True, query=True, required=True)
+option: Flag('continue', autofill=True, cli_name='continue', default=False)
option: Flag('updatedns?', autofill=True, default=False)
option: Str('version?', exclude='webui')
output: Output('result', <type 'dict'>, None)
diff --git a/ipalib/plugins/host.py b/ipalib/plugins/host.py
index 3f5e4e7..570bbe5 100644
--- a/ipalib/plugins/host.py
+++ b/ipalib/plugins/host.py
@@ -642,7 +642,7 @@ class host_del(LDAPDelete):
msg_summary = _('Deleted host "%(value)s"')
member_attributes = ['managedby']
- takes_options = (
+ takes_options = LDAPDelete.takes_options + (
Flag('updatedns?',
doc=_('Remove entries from DNS'),
default=False,
diff --git a/ipatests/test_xmlrpc/test_host_plugin.py b/ipatests/test_xmlrpc/test_host_plugin.py
index a98fed1..7c0312b 100644
--- a/ipatests/test_xmlrpc/test_host_plugin.py
+++ b/ipatests/test_xmlrpc/test_host_plugin.py
@@ -139,10 +139,7 @@ sshpubkeyfp = u'13:67:6B:BF:4E:A2:05:8E:AE:25:8B:A1:31:DE:6F:1B public key test
class test_host(Declarative):
cleanup_commands = [
- ('host_del', [fqdn1], {}),
- ('host_del', [fqdn2], {}),
- ('host_del', [fqdn3], {}),
- ('host_del', [fqdn4], {}),
+ ('host_del', [fqdn1, fqdn2, fqdn3, fqdn4], {'continue': True}),
('service_del', [service1], {}),
]