avoid attempting to stop services for nodes that are not considered up

This commit is contained in:
Blake Harnden 2020-02-04 10:13:37 -08:00
parent 3846f2b5bd
commit c66ee04db5
4 changed files with 7 additions and 13 deletions

View file

@ -1556,7 +1556,8 @@ class Session:
funcs = []
for node_id in self.nodes:
node = self.nodes[node_id]
if isinstance(node, CoreNodeBase):
if not isinstance(node, CoreNodeBase) or not node.up:
continue
args = (node,)
funcs.append((self.services.stop_services, args, {}))
utils.threadpool(funcs)

View file

@ -284,6 +284,7 @@ class CoreNodeBase(NodeBase):
self.config_services = {}
self.nodedir = None
self.tmpnodedir = False
self.up = False
def add_config_service(self, service_class: "ConfigServiceType") -> None:
"""
@ -503,7 +504,6 @@ class CoreNode(CoreNodeBase):
)
self.client = None
self.pid = None
self.up = False
self.lock = threading.RLock()
self._mounts = []
self.bootsh = bootsh

View file

@ -289,7 +289,6 @@ class Rj45Node(CoreNodeBase, CoreInterface):
"""
CoreNodeBase.__init__(self, session, _id, name, start, server)
CoreInterface.__init__(self, session, self, name, mtu, server)
self.up = False
self.lock = threading.RLock()
self.ifindex = None
# the following are PyCoreNetIf attributes

View file

@ -923,20 +923,14 @@ class CoreXmlReader:
if link_options.unidirectional == 1 and node_set in node_sets:
logging.info(
"updating link node_one(%s) node_two(%s): %s",
node_one,
node_two,
link_options,
"updating link node_one(%s) node_two(%s)", node_one, node_two
)
self.session.update_link(
node_one, node_two, interface_one.id, interface_two.id, link_options
)
else:
logging.info(
"adding link node_one(%s) node_two(%s): %s",
node_one,
node_two,
link_options,
"adding link node_one(%s) node_two(%s)", node_one, node_two
)
self.session.add_link(
node_one, node_two, interface_one, interface_two, link_options