diff options
author | Martin Babinsky <mbabinsk@redhat.com> | 2016-06-23 19:14:53 +0200 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-07-01 09:37:25 +0200 |
commit | 750a392fe22aa8ddcb21077e8c24b96d36ecf20c (patch) | |
tree | 54dd24acf6563c9c714a8333d55b7b36b37672b9 /ipaserver/plugins/service.py | |
parent | 7e803aa4625869ef6a8e78a09cd99270c4cc77e5 (diff) | |
download | freeipa-750a392fe22aa8ddcb21077e8c24b96d36ecf20c.tar.gz freeipa-750a392fe22aa8ddcb21077e8c24b96d36ecf20c.tar.xz freeipa-750a392fe22aa8ddcb21077e8c24b96d36ecf20c.zip |
Allow for commands that use positional parameters to add/remove attributes
Commands that modify a single multivalued attribute of an entry should use
positional parameters to specify both the primary key and the values to
add/remove. Named options are redundant in this case.
The `--certificate option` of `*-add/remove-cert` commands was turned
mandatory to avoid EmptyModlist when it is omitted.
https://fedorahosted.org/freeipa/ticket/3961
https://fedorahosted.org/freeipa/ticket/5413
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaserver/plugins/service.py')
-rw-r--r-- | ipaserver/plugins/service.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ipaserver/plugins/service.py b/ipaserver/plugins/service.py index 70bf31fd4..ec0bc5fbe 100644 --- a/ipaserver/plugins/service.py +++ b/ipaserver/plugins/service.py @@ -39,7 +39,9 @@ from .baseldap import ( LDAPRemoveMember, LDAPQuery, LDAPAddAttribute, - LDAPRemoveAttribute) + LDAPRemoveAttribute, + LDAPAddAttributeViaOption, + LDAPRemoveAttributeViaOption) from ipalib import x509 from ipalib import _, ngettext from ipalib import util @@ -881,14 +883,14 @@ class service_disable(LDAPQuery): @register() -class service_add_cert(LDAPAddAttribute): +class service_add_cert(LDAPAddAttributeViaOption): __doc__ = _('Add new certificates to a service') msg_summary = _('Added certificates to service principal "%(value)s"') attribute = 'usercertificate' @register() -class service_remove_cert(LDAPRemoveAttribute): +class service_remove_cert(LDAPRemoveAttributeViaOption): __doc__ = _('Remove certificates from a service') msg_summary = _('Removed certificates from service principal "%(value)s"') attribute = 'usercertificate' |