mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Fix dnsrecord-mod raise error if last record attr is removed
Removing last record attribute causes output type validation error Reviewed-By: Jan Cholasta <jcholast@redhat.com>
This commit is contained in:
parent
5aead1ff6f
commit
9e8aed8e53
@ -3374,6 +3374,13 @@ class dnsrecord_mod(LDAPUpdate):
|
|||||||
if del_all:
|
if del_all:
|
||||||
result = self.obj.methods.delentry(*keys,
|
result = self.obj.methods.delentry(*keys,
|
||||||
version=options['version'])
|
version=options['version'])
|
||||||
|
|
||||||
|
# we need to modify delete result to match mod output type
|
||||||
|
# only one value is expected, not a list
|
||||||
|
if client_has_capability(options['version'], 'primary_key_types'):
|
||||||
|
assert len(result['value']) == 1
|
||||||
|
result['value'] = result['value'][0]
|
||||||
|
|
||||||
# indicate that entry was deleted
|
# indicate that entry was deleted
|
||||||
context.dnsrecord_entry_mods[(keys[0], keys[1])] = None
|
context.dnsrecord_entry_mods[(keys[0], keys[1])] = None
|
||||||
|
|
||||||
|
@ -1378,10 +1378,10 @@ class test_dns(Declarative):
|
|||||||
|
|
||||||
|
|
||||||
dict(
|
dict(
|
||||||
desc='Delete record %r in zone %r' % (tlsa, zone1),
|
desc='Remove record using dnsrecord-mod %r in zone %r' % (tlsa, zone1),
|
||||||
command=('dnsrecord_del', [zone1, tlsa], {'del_all': True}),
|
command=('dnsrecord_mod', [zone1, tlsa], {'tlsarecord': ''}),
|
||||||
expected={
|
expected={
|
||||||
'value': [tlsa_dnsname],
|
'value': tlsa_dnsname,
|
||||||
'summary': u'Deleted record "%s"' % tlsa,
|
'summary': u'Deleted record "%s"' % tlsa,
|
||||||
'result': {'failed': []},
|
'result': {'failed': []},
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user