def test_update_provisioning_steps(self):
        ctx, cluster = self._make_sample()

        step_id1 = self.api.cluster_provision_step_add(ctx, cluster.id, {"step_name": "some_name1", "total": 2})

        self.api.cluster_event_add(ctx, step_id1, {"event_info": "INFO", "successful": True})

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        # check that we have correct provision step

        result_cluster = self.api.cluster_get(ctx, cluster.id)
        result_step = result_cluster.provision_progress[0]

        self.assertIsNone(result_step.successful)

        # check updating in case of successful provision step

        self.api.cluster_event_add(ctx, step_id1, {"event_info": "INFO", "successful": True})

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        result_cluster = self.api.cluster_get(ctx, cluster.id)
        result_step = result_cluster.provision_progress[0]

        self.assertEqual(True, result_step.successful)

        # check updating in case of failed provision step

        step_id2 = self.api.cluster_provision_step_add(ctx, cluster.id, {"step_name": "some_name1", "total": 2})

        self.api.cluster_event_add(ctx, step_id2, {"event_info": "INFO", "successful": False})

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        result_cluster = self.api.cluster_get(ctx, cluster.id)

        for step in result_cluster.provision_progress:
            if step.id == step_id2:
                self.assertEqual(False, step.successful)

        # check that it's possible to add provision step after failed step
        step_id3 = cpo.add_provisioning_step(cluster.id, "some_name", 2)

        self.assertEqual(step_id3, cpo.get_current_provisioning_step(cluster.id))
示例#2
0
    def test_update_provisioning_steps(self):
        ctx, cluster = self._make_sample()

        step_id1 = self.api.cluster_provision_step_add(ctx, cluster.id, {
            "step_name": "some_name1",
            "total": 2,
        })

        self.api.cluster_event_add(ctx, step_id1, {
            "event_info": "INFO",
            "successful": True
        })

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        # check that we have correct provision step

        result_cluster = self.api.cluster_get(ctx, cluster.id)
        result_step = result_cluster.provision_progress[0]

        self.assertIsNone(result_step.successful)

        # check updating in case of successful provision step

        self.api.cluster_event_add(ctx, step_id1, {
            "event_info": "INFO",
            "successful": True
        })

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        result_cluster = self.api.cluster_get(ctx, cluster.id)
        result_step = result_cluster.provision_progress[0]

        self.assertEqual(True, result_step.successful)

        # check updating in case of failed provision step

        step_id2 = self.api.cluster_provision_step_add(ctx, cluster.id, {
            "step_name": "some_name1",
            "total": 2,
        })

        self.api.cluster_event_add(ctx, step_id2, {
            "event_info": "INFO",
            "successful": False,
        })

        self.api.cluster_provision_progress_update(ctx, cluster.id)

        result_cluster = self.api.cluster_get(ctx, cluster.id)

        for step in result_cluster.provision_progress:
            if step.id == step_id2:
                self.assertEqual(False, step.successful)

        # check that it's possible to add provision step after failed step
        step_id3 = cpo.add_provisioning_step(cluster.id, "some_name", 2)

        self.assertEqual(
            step_id3, cpo.get_current_provisioning_step(cluster.id))