BIND 10 #574: Refactoring and testing of boss

BIND 10 Development do-not-reply at isc.org
Mon Feb 14 19:32:44 UTC 2011


#574: Refactoring and testing of boss
-------------------------------------+-------------------------------------
           Reporter:  vorner         |                      Owner:
               Type:  enhancement    |                     Status:  new
           Priority:  major          |                  Milestone:  A-Team-
          Component:  Boss of BIND   |  Task-Backlog
          Sensitive:  0              |                   Keywords:
Add Hours to Ticket:  0              |  Estimated Number of Hours:  0
        Total Hours:  0              |                  Billable?:  1
                                     |                  Internal?:  0
-------------------------------------+-------------------------------------
 Currently, Boss has hardcoded list of processes to start. That makes it
 inflexible (adding a new component means modifying it, but users should be
 able to add their own components).

 I believe that a system where processes would be kind-of objects that
 could be either required by the user or dependencies of others (or, there
 might even be meta-packages of processes) would simplify the handling.
 Then the list of required processes would be taken from configuration and
 the deps computed from some kind of spec files.

 There would be a list of hardcoded processes to start before loading the
 configuration, but the starting of them could be the same.

 It would simplify testing. We could test computing the dependencies,
 reaction to configuration changes and if it wants to start and stop the
 correct processes without actually starting them.

 Then there could be one mock process that the tests could instruct to die,
 to reject dying upon sending the Shutdown command, but it wouldn't do
 anything else. Therefore we could launch that one without fear it would do
 bad things, like bind ports or talk over network. We can even do combined
 test to see if it is properly started/stopped at startup or on change of
 configuration.

 This is probably a bigger task and should be split first, but we shouldn't
 forget it.

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


More information about the bind10-tickets mailing list