def on_discovery_add(self, discovery):
discovery.connect()<EOL>for cluster in self.configurables[Cluster].values():<EOL><INDENT>if cluster.discovery != discovery.name:<EOL><INDENT>continue<EOL><DEDENT>self.launch_thread(<EOL>cluster.name, discovery.start_watching,<EOL>cluster, self.sync_balancer_files<EOL>)<EOL><DEDENT>self.sync_balancer_files()<EOL>
When a discovery is added we call `connect()` on it and launch a thread
for each cluster where the discovery watches for changes to the
cluster's nodes.