BIND 10 #2184: adding and removing items to/from lists/dicts for item_type=='any'

BIND 10 Development do-not-reply at isc.org
Mon Aug 6 09:03:14 UTC 2012


#2184: adding and removing items to/from lists/dicts for item_type=='any'
-------------------------------------+-------------------------------------
            Reporter:  jelte         |                        Owner:
                Type:  defect        |                       Status:  new
            Priority:  medium        |                    Milestone:  Next-
           Component:  bind-ctl      |  Sprint-Proposed
           Sensitive:  0             |                     Keywords:
         Sub-Project:  DNS           |              Defect Severity:  N/A
Estimated Difficulty:  0             |  Feature Depending on Ticket:
         Total Hours:  0             |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------
 As noted in the current documentation ticket #2133, when we have a spec
 containing an item of type 'any', bindctl has a hard time modifying the
 data, and can only set it as a whole.

 This will obviously not do for lists and named sets (as used in for
 instance the 'MasterFiles' config).

 We discussed this, and ideally we'd have some form of dynamic overlay
 here, determined at runtime by the configuration manager, and perhaps data
 types even need to be context-sensitive (where the format of an item
 depends on the value of another item). This is far from easy to implement,
 and given that the current implementation is already creaking at the
 seams, I propose we take this into account in the rework of it (as
 proposed earlier, although that proposal did not take this problem into
 account yet).

 There is, however, something we can do reasonably fast, that would make it
 at least a bit usable; we can have bindctl determine the format based on
 the current value;
 - if it is a primitive type, it can only be set directly
 - if it is a list, you can add/remove like normal lists
 - if it is a dict, you can add/remove like with named sets (it can by
 definition not be a map, since that would've been in the spec)

 Obviously this would still not be ideal; you still have to manually set a
 value, but after that, you can add/remove normally.

 I already have some code, and I propose we resolve this quickly, and
 ideally even before the release that adds the new datasource config
 changes.

-- 
Ticket URL: <https://bind10.isc.org/ticket/2184>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list