dns: fix dns_update_system_records to work with thin client

https://fedorahosted.org/freeipa/ticket/2008
https://fedorahosted.org/freeipa/ticket/4739

Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
Jan Cholasta 2016-06-21 07:47:52 +02:00 committed by Martin Basti
parent 0787af8d5a
commit 894be1bd50
4 changed files with 20 additions and 14 deletions

View File

@ -1092,10 +1092,12 @@ output: Output('result', type=[<type 'bool'>])
output: Output('summary', type=[<type 'unicode'>, <type 'NoneType'>]) output: Output('summary', type=[<type 'unicode'>, <type 'NoneType'>])
output: Output('value', type=[<type 'unicode'>]) output: Output('value', type=[<type 'unicode'>])
command: dns_update_system_records command: dns_update_system_records
args: 0,2,2 args: 0,4,2
option: Flag('all', autofill=True, cli_name='all', default=False)
option: Flag('dry_run', autofill=True, default=False) option: Flag('dry_run', autofill=True, default=False)
option: Flag('raw', autofill=True, cli_name='raw', default=False)
option: Str('version?') option: Str('version?')
output: Output('result', type=[<type 'dict'>]) output: Entry('result')
output: Output('value', type=[<type 'bool'>]) output: Output('value', type=[<type 'bool'>])
command: dnsconfig_mod command: dnsconfig_mod
args: 0,11,3 args: 0,11,3

View File

@ -90,5 +90,5 @@ IPA_DATA_VERSION=20100614120000
# # # #
######################################################## ########################################################
IPA_API_VERSION_MAJOR=2 IPA_API_VERSION_MAJOR=2
IPA_API_VERSION_MINOR=197 IPA_API_VERSION_MINOR=198
# Last change: pspacek - DNS: Support default TTL setting for master DNS zones # Last change: dns: fix dns_update_system_records to work with thin client

View File

@ -23,7 +23,7 @@ from __future__ import print_function
import six import six
import copy import copy
from ipaclient.frontend import MethodOverride, CommandOverride from ipaclient.frontend import MethodOverride
from ipalib import errors from ipalib import errors
from ipalib.dns import (get_part_rrtype, from ipalib.dns import (get_part_rrtype,
get_record_rrtype, get_record_rrtype,
@ -347,7 +347,7 @@ class dnsforwardzone_mod(MethodOverride):
@register(override=True) @register(override=True)
class dns_update_system_records(CommandOverride): class dns_update_system_records(MethodOverride):
def output_for_cli(self, textui, output, *args, **options): def output_for_cli(self, textui, output, *args, **options):
output_super = copy.deepcopy(output) output_super = copy.deepcopy(output)
super_res = output_super.get('result', {}) super_res = output_super.get('result', {})

View File

@ -41,6 +41,7 @@ from ipalib.dns import (extra_name_format,
iterate_rrparams_by_parts, iterate_rrparams_by_parts,
part_name_format, part_name_format,
record_name_format) record_name_format)
from ipalib.frontend import Method, Object
from ipalib.request import context from ipalib.request import context
from ipalib import api, errors, output from ipalib import api, errors, output
from ipalib import Command from ipalib import Command
@ -4428,11 +4429,8 @@ class dnsforwardzone_remove_permission(DNSZoneBase_remove_permission):
@register() @register()
class dns_update_system_records(Command): class dns_system_records(Object):
__doc__ = _('Update location and IPA server DNS records') takes_params = (
has_output_params = (
Str( Str(
'ipa_records*', 'ipa_records*',
label=_('IPA DNS records') label=_('IPA DNS records')
@ -4443,11 +4441,17 @@ class dns_update_system_records(Command):
) )
) )
@register()
class dns_update_system_records(Method):
__doc__ = _('Update location and IPA server DNS records')
obj_name = 'dns_system_records'
attr_name = 'update'
has_output = ( has_output = (
output.Output( output.Entry(
'result', 'result',
type=dict,
doc=_('Dictionary mapping variable name to value'),
), ),
output.Output( output.Output(
'value', bool, 'value', bool,