On 04/08/2013 04:33 PM, Jan Cholasta wrote: > On 8.4.2013 15:41, Jan Cholasta wrote: >> Hi, >> >> On 8.4.2013 13:40, Ana Krivokapic wrote: >>> Hello, >>> >>> This patch addresses https://fedorahosted.org/freeipa/ticket/3503. See >>> the commit message for details. >>> >> >> the patch seems OK, I will just run the test suite to make sure you >> didn't miss anything. >> >> Honza >> > > Change dnszone_del summary to "Deleted DNS zone", as we use "DNS zone" > (not just "zone") in other commands. Also as Petr pointed out, we're > in string freeze now, so we have to wait until it's over before > pushing this patch, or split the patch in two. > > Besides that, ACK. >
Thanks for the review. I have changed the summary message to "Deleted DNS zone", and split the patch into two patches that can be applied independently. -- Regards, Ana Krivokapic Associate Software Engineer FreeIPA team Red Hat Inc.
From 6ed0a3bc0af72e52742f2753c1ad39d5329e0032 Mon Sep 17 00:00:00 2001 From: Ana Krivokapic <akriv...@redhat.com> Date: Mon, 8 Apr 2013 11:04:17 -0400 Subject: [PATCH] Fix output for some CLI commands Fix output of dnsrecord_del: it now uses output.standard_delete and excludes --all and --raw flags. Fix output of sudorule_{add,remove}_option: they now use output.standard_entry and include --all and --raw flags. https://fedorahosted.org/freeipa/ticket/3503 --- API.txt | 22 ++++++++++++++-------- VERSION | 2 +- ipalib/plugins/dns.py | 2 ++ ipalib/plugins/sudorule.py | 6 ++++-- tests/test_cmdline/test_cli.py | 8 -------- 5 files changed, 21 insertions(+), 19 deletions(-) diff --git a/API.txt b/API.txt index 81a1f6187583029a4378e44d65bcc7b8d4496508..b97864eea634a65c2b3f11c47433a0f045d175d3 100644 --- a/API.txt +++ b/API.txt @@ -806,13 +806,12 @@ output: Entry('result', <type 'dict'>, Gettext('A dictionary representing an LDA output: Output('summary', (<type 'unicode'>, <type 'NoneType'>), None) output: Output('value', <type 'unicode'>, None) command: dnsrecord_del -args: 2,41,3 +args: 2,39,3 arg: Str('dnszoneidnsname', cli_name='dnszone', query=True, required=True) arg: Str('idnsname', attribute=True, cli_name='name', multivalue=False, primary_key=True, query=True, required=True) option: A6Record('a6record', attribute=True, autofill=False, cli_name='a6_rec', csv=True, multivalue=True, option_group=None, required=False) option: AAAARecord('aaaarecord', attribute=True, autofill=False, cli_name='aaaa_rec', csv=True, multivalue=True, option_group=None, required=False) option: AFSDBRecord('afsdbrecord', attribute=True, autofill=False, cli_name='afsdb_rec', csv=True, multivalue=True, option_group=None, required=False) -option: Flag('all', autofill=True, cli_name='all', default=False, exclude='webui') option: APLRecord('aplrecord', attribute=True, autofill=False, cli_name='apl_rec', csv=True, multivalue=True, option_group=None, required=False) option: ARecord('arecord', attribute=True, autofill=False, cli_name='a_rec', csv=True, multivalue=True, option_group=None, required=False) option: CERTRecord('certrecord', attribute=True, autofill=False, cli_name='cert_rec', csv=True, multivalue=True, option_group=None, required=False) @@ -837,7 +836,6 @@ option: NSEC3Record('nsec3record', attribute=True, autofill=False, cli_name='nse option: NSECRecord('nsecrecord', attribute=True, autofill=False, cli_name='nsec_rec', csv=True, multivalue=True, option_group=None, required=False) option: NSRecord('nsrecord', attribute=True, autofill=False, cli_name='ns_rec', csv=True, multivalue=True, option_group=None, required=False) option: PTRRecord('ptrrecord', attribute=True, autofill=False, cli_name='ptr_rec', csv=True, multivalue=True, option_group=None, required=False) -option: Flag('raw', autofill=True, cli_name='raw', default=False, exclude='webui') option: RPRecord('rprecord', attribute=True, autofill=False, cli_name='rp_rec', csv=True, multivalue=True, option_group=None, required=False) option: RRSIGRecord('rrsigrecord', attribute=True, autofill=False, cli_name='rrsig_rec', csv=True, multivalue=True, option_group=None, required=False) option: SIGRecord('sigrecord', attribute=True, autofill=False, cli_name='sig_rec', csv=True, multivalue=True, option_group=None, required=False) @@ -850,7 +848,7 @@ option: TKEYRecord('tkeyrecord', attribute=True, autofill=False, cli_name='tkey_ option: TSIGRecord('tsigrecord', attribute=True, autofill=False, cli_name='tsig_rec', csv=True, multivalue=True, option_group=None, required=False) option: TXTRecord('txtrecord', attribute=True, autofill=False, cli_name='txt_rec', csv=True, multivalue=True, option_group=None, required=False) option: Str('version?', exclude='webui') -output: Entry('result', <type 'dict'>, Gettext('A dictionary representing an LDAP entry', domain='ipa', localedir=None)) +output: Output('result', <type 'dict'>, None) output: Output('summary', (<type 'unicode'>, <type 'NoneType'>), None) output: Output('value', <type 'unicode'>, None) command: dnsrecord_delentry @@ -3134,11 +3132,15 @@ 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: sudorule_add_option -args: 1,2,1 +args: 1,4,3 arg: Str('cn', attribute=True, cli_name='sudorule_name', multivalue=False, primary_key=True, query=True, required=True) +option: Flag('all', autofill=True, cli_name='all', default=False, exclude='webui') option: Str('ipasudoopt', cli_name='sudooption') +option: Flag('raw', autofill=True, cli_name='raw', default=False, exclude='webui') option: Str('version?', exclude='webui') -output: Output('result', None, None) +output: Entry('result', <type 'dict'>, Gettext('A dictionary representing an LDAP entry', domain='ipa', localedir=None)) +output: Output('summary', (<type 'unicode'>, <type 'NoneType'>), None) +output: Output('value', <type 'unicode'>, None) command: sudorule_add_runasgroup args: 1,4,3 arg: Str('cn', attribute=True, cli_name='sudorule_name', multivalue=False, primary_key=True, query=True, required=True) @@ -3274,11 +3276,15 @@ 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: sudorule_remove_option -args: 1,2,1 +args: 1,4,3 arg: Str('cn', attribute=True, cli_name='sudorule_name', multivalue=False, primary_key=True, query=True, required=True) +option: Flag('all', autofill=True, cli_name='all', default=False, exclude='webui') option: Str('ipasudoopt', cli_name='sudooption') +option: Flag('raw', autofill=True, cli_name='raw', default=False, exclude='webui') option: Str('version?', exclude='webui') -output: Output('result', None, None) +output: Entry('result', <type 'dict'>, Gettext('A dictionary representing an LDAP entry', domain='ipa', localedir=None)) +output: Output('summary', (<type 'unicode'>, <type 'NoneType'>), None) +output: Output('value', <type 'unicode'>, None) command: sudorule_remove_runasgroup args: 1,4,3 arg: Str('cn', attribute=True, cli_name='sudorule_name', multivalue=False, primary_key=True, query=True, required=True) diff --git a/VERSION b/VERSION index 884f80fad0de2f49ef6fa6fd105dcd5eb0600a67..5eda9ca36f7bf777b576bc7119f19e9622612b03 100644 --- a/VERSION +++ b/VERSION @@ -89,4 +89,4 @@ IPA_DATA_VERSION=20100614120000 # # ######################################################## IPA_API_VERSION_MAJOR=2 -IPA_API_VERSION_MINOR=55 +IPA_API_VERSION_MINOR=56 diff --git a/ipalib/plugins/dns.py b/ipalib/plugins/dns.py index 3e6ed8357f0954f1fd081163611d05e3bff9a290..f40360f8f242179ff471a7edf26f98cbf016f04d 100644 --- a/ipalib/plugins/dns.py +++ b/ipalib/plugins/dns.py @@ -2679,6 +2679,8 @@ api.register(dnsrecord_delentry) class dnsrecord_del(LDAPUpdate): __doc__ = _('Delete DNS resource record.') + has_output = output.standard_delete + no_option_msg = _('Neither --del-all nor options to delete a specific record provided.\n'\ "Command help may be consulted for all supported record types.") diff --git a/ipalib/plugins/sudorule.py b/ipalib/plugins/sudorule.py index 3c89b7a03c782e1bf500be3094f08789e685fb20..a89941cb6ab9b258de26bb7cf3632dc0acc7e20e 100644 --- a/ipalib/plugins/sudorule.py +++ b/ipalib/plugins/sudorule.py @@ -605,6 +605,7 @@ api.register(sudorule_remove_runasgroup) class sudorule_add_option(LDAPQuery): __doc__ = _('Add an option to the Sudo Rule.') + has_output = output.standard_entry takes_options = ( Str('ipasudoopt', cli_name='sudooption', @@ -642,7 +643,7 @@ class sudorule_add_option(LDAPQuery): entry_attrs = entry_to_dict(entry_attrs, **options) - return dict(result=entry_attrs) + return dict(result=entry_attrs, value=cn) def output_for_cli(self, textui, result, cn, **options): textui.print_dashed(_('Added option "%(option)s" to Sudo Rule "%(rule)s"') % \ @@ -657,6 +658,7 @@ api.register(sudorule_add_option) class sudorule_remove_option(LDAPQuery): __doc__ = _('Remove an option from Sudo Rule.') + has_output = output.standard_entry takes_options = ( Str('ipasudoopt', cli_name='sudooption', @@ -697,7 +699,7 @@ class sudorule_remove_option(LDAPQuery): entry_attrs = entry_to_dict(entry_attrs, **options) - return dict(result=entry_attrs) + return dict(result=entry_attrs, value=cn) def output_for_cli(self, textui, result, cn, **options): textui.print_dashed(_('Removed option "%(option)s" from Sudo Rule "%(rule)s"') % \ diff --git a/tests/test_cmdline/test_cli.py b/tests/test_cmdline/test_cli.py index 75d1608eeb556a0cfd49075acdb6deef26e092d1..f66906c6aa48137c83445147253599ae437621d1 100644 --- a/tests/test_cmdline/test_cli.py +++ b/tests/test_cmdline/test_cli.py @@ -147,8 +147,6 @@ class TestCLIParsing(object): idnsname=u'ns', del_all=True, structured=False, - raw=False, - all=False, version=API_VERSION) with self.fake_stdin('YeS\n'): self.check_command('dnsrecord_del test-example.com ns', @@ -157,8 +155,6 @@ class TestCLIParsing(object): idnsname=u'ns', del_all=True, structured=False, - raw=False, - all=False, version=API_VERSION) finally: self.run_command('dnszone_del', idnsname=u'test-example.com') @@ -184,8 +180,6 @@ class TestCLIParsing(object): del_all=False, sshfprecord=records, structured=False, - raw=False, - all=False, version=API_VERSION) finally: self.run_command('dnszone_del', idnsname=u'test-example.com') @@ -261,8 +255,6 @@ class TestCLIParsing(object): del_all=False, txtrecord=[u'"A pretty little problem," said Holmes.'], structured=False, - raw=False, - all=False, version=API_VERSION) finally: self.run_command('dnszone_del', idnsname=u'test-example.com') -- 1.8.1.4
From c3ba4e7fec4106d113420cc07828761e8939f5f3 Mon Sep 17 00:00:00 2001 From: Ana Krivokapic <akriv...@redhat.com> Date: Mon, 8 Apr 2013 10:55:47 -0400 Subject: [PATCH] Add missing summary message to dnszone_del https://fedorahosted.org/freeipa/ticket/3503 --- ipalib/plugins/dns.py | 2 ++ tests/test_xmlrpc/test_dns_plugin.py | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ipalib/plugins/dns.py b/ipalib/plugins/dns.py index 3e6ed8357f0954f1fd081163611d05e3bff9a290..cf7ea216ec81bf4b524fa98a20512d4abc1efb75 100644 --- a/ipalib/plugins/dns.py +++ b/ipalib/plugins/dns.py @@ -1849,6 +1849,8 @@ api.register(dnszone_add) class dnszone_del(LDAPDelete): __doc__ = _('Delete DNS zone (SOA record).') + msg_summary = _('Deleted DNS zone "%(value)s"') + def post_callback(self, ldap, dn, *keys, **options): try: api.Command['permission_del'](self.obj.permission_name(keys[-1]), diff --git a/tests/test_xmlrpc/test_dns_plugin.py b/tests/test_xmlrpc/test_dns_plugin.py index fb548bb97920883c8d1e2621ecdbb8682829e8b6..7b14fc6709dceb18bfd3a920f1829dcc1871061b 100644 --- a/tests/test_xmlrpc/test_dns_plugin.py +++ b/tests/test_xmlrpc/test_dns_plugin.py @@ -394,7 +394,7 @@ class test_dns(Declarative): command=('dnszone_del', [revdnszone1], {}), expected={ 'value': revdnszone1, - 'summary': None, + 'summary': u'Deleted DNS zone "%s"' % revdnszone1, 'result': {'failed': u''}, }, ), @@ -905,7 +905,7 @@ class test_dns(Declarative): command=('dnszone_del', [dnszone2], {}), expected={ 'value': dnszone2, - 'summary': None, + 'summary': u'Deleted DNS zone "%s"' % dnszone2, 'result': {'failed': u''}, }, ), @@ -1397,7 +1397,7 @@ class test_dns(Declarative): command=('dnszone_del', [dnszone1], {}), expected={ 'value': dnszone1, - 'summary': None, + 'summary': u'Deleted DNS zone "%s"' % dnszone1, 'result': {'failed': u''}, }, ), @@ -1460,7 +1460,7 @@ class test_dns(Declarative): command=('dnszone_del', [dnszone1], {}), expected={ 'value': dnszone1, - 'summary': None, + 'summary': u'Deleted DNS zone "%s"' % dnszone1, 'result': {'failed': u''}, }, ), -- 1.8.1.4
_______________________________________________ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel