def _refresh_health_for_cluster(cluster_id): st_dict = {'verification': {'status': 'START'}} try: ver_base.validate_verification_start(cluster_id) ver_base.handle_verification(cluster_id, st_dict) except ver_base.CannotVerifyError: LOG.debug("Cannot verify cluster because verifications are disabled " "or cluster already is verifying") except Exception: # if occasional error occurred, there is no reason to move # cluster into error state LOG.debug("Skipping refreshing cluster health") ver_base.clean_verification_data(cluster_id)
def test_verification_start(self, get_health_checks): cluster = self._cluster_sample() get_health_checks.return_value = [Check] verification_base.handle_verification(cluster, { 'verification': {'status': 'START'}}) cluster = self.api.cluster_get(context.ctx(), cluster) ver = cluster.verification self.assertEqual('GREEN', ver['status']) self.assertEqual(1, len(ver['checks'])) self.assertEqual('No criminality', ver.checks[0]['description']) id = ver['id'] get_health_checks.return_value = [YellowCheck, Check, Check] verification_base.handle_verification(cluster, { 'verification': {'status': 'START'}}) cluster = self.api.cluster_get(context.ctx(), cluster) ver = cluster.verification self.assertEqual('YELLOW', ver['status']) self.assertEqual(3, len(ver['checks'])) self.assertNotEqual(ver['id'], id) get_health_checks.return_value = [RedCheck, YellowCheck] verification_base.handle_verification(cluster, { 'verification': {'status': 'START'}}) cluster = self.api.cluster_get(context.ctx(), cluster) ver = cluster.verification self.assertEqual('RED', ver['status']) self.assertEqual(2, len(ver['checks'])) self.assertNotEqual(ver['id'], id) self.assertEqual("James bond check", ver['checks'][0]['name'])
def _handle_verification(cluster_id, values): ver_base.handle_verification(cluster_id, values)