Exemplo n.º 1
0
    def test_evaluate_group_succ_criteria(self):
        dgm = DeploymentGroupManager(yaml.safe_load(GROUPS_YAML), node_lookup)
        group = dgm._all_groups.get('control-nodes')

        nodes = ["node{}".format(i) for i in range(1, 12)]
        for node in nodes:
            dgm.mark_node_prepared(node)
        dgm.fail_unsuccessful_nodes(group, nodes)
        assert dgm.evaluate_group_succ_criteria('control-nodes',
                                                Stage.PREPARED)
        assert group.stage == Stage.PREPARED

        for node in nodes:
            dgm.mark_node_deployed(node)
        assert dgm.evaluate_group_succ_criteria('control-nodes',
                                                Stage.DEPLOYED)
        assert group.stage == Stage.DEPLOYED
Exemplo n.º 2
0
 def test_reports(self, caplog):
     dgm = DeploymentGroupManager(yaml.safe_load(GROUPS_YAML), node_lookup)
     dgm.mark_node_deployed('node1')
     dgm.mark_node_prepared('node2')
     dgm.mark_node_failed('node3')
     dgm.mark_group_prepared('control-nodes')
     dgm.mark_group_deployed('control-nodes')
     dgm.mark_group_prepared('compute-nodes-1')
     dgm.mark_group_failed('compute-nodes-2')
     dgm.report_group_summary()
     assert "=====   Group Summary   =====" in caplog.text
     assert ("Group ntp-node [Critical] ended with stage: "
             "Stage.NOT_STARTED") in caplog.text
     caplog.clear()
     dgm.report_node_summary()
     assert "Nodes Stage.PREPARED: node2" in caplog.text
     assert "Nodes Stage.FAILED: node3" in caplog.text
     assert "===== End Node Summary =====" in caplog.text
     assert "It was the best of times" not in caplog.text
Exemplo n.º 3
0
 def test_mark_node_deployed(self):
     dgm = DeploymentGroupManager(yaml.safe_load(_GROUPS_YAML), node_lookup)
     dgm.mark_node_deployed('node1')
     assert dgm.get_nodes(Stage.DEPLOYED) == ['node1']