diff --git a/vitrage/datasources/ceilometer/driver.py b/vitrage/datasources/ceilometer/driver.py index 0ae5d3668..714e5bb12 100644 --- a/vitrage/datasources/ceilometer/driver.py +++ b/vitrage/datasources/ceilometer/driver.py @@ -181,7 +181,7 @@ class CeilometerDriver(AlarmDriverBase): def _convert_alarm(cls, alarm): alarm_type = alarm.type if alarm_type == CeilProps.EVENT and \ - _is_vitrage_alarm(alarm.event_rule): + _is_vitrage_alarm(alarm.event_rule): return cls._convert_vitrage_alarm(alarm) elif alarm_type == CeilProps.EVENT: return cls._convert_event_alarm(alarm) diff --git a/vitrage/entity_graph/graph_init.py b/vitrage/entity_graph/graph_init.py index 9e64b764d..abaa962d0 100644 --- a/vitrage/entity_graph/graph_init.py +++ b/vitrage/entity_graph/graph_init.py @@ -124,6 +124,7 @@ class VitrageGraphInit(object): def subscribe_presist_notifier(self): self.graph.subscribe(PersistNotifier().notify_when_applicable) + PRIORITY_DELAY = 0.05 diff --git a/vitrage/evaluator/actions/base.py b/vitrage/evaluator/actions/base.py index e010f42a4..86342d550 100644 --- a/vitrage/evaluator/actions/base.py +++ b/vitrage/evaluator/actions/base.py @@ -21,6 +21,7 @@ class ActionType(object): MARK_DOWN = 'mark_down' EXECUTE_MISTRAL = 'execute_mistral' + action_types = [ActionType.SET_STATE, ActionType.RAISE_ALARM, ActionType.ADD_CAUSAL_RELATIONSHIP, diff --git a/vitrage/evaluator/template_functions/function_resolver.py b/vitrage/evaluator/template_functions/function_resolver.py index 8bda43ea9..4079b611e 100644 --- a/vitrage/evaluator/template_functions/function_resolver.py +++ b/vitrage/evaluator/template_functions/function_resolver.py @@ -68,7 +68,7 @@ def is_function(str): A function has the format: func_name(params) Search for a regex with open and close parenthesis """ - return re.match('.*\(.*\)', str) + return re.match(r'.*\(.*\)', str) def _is_wanted_function(str, func_name): @@ -77,4 +77,4 @@ def _is_wanted_function(str, func_name): A function has the format: func_name(params) Search for a regex with open and close parenthesis """ - return re.match(func_name + '\(.*\)', str) + return re.match(func_name + r'\(.*\)', str) diff --git a/vitrage/evaluator/template_validation/content/template_content_validator_v3.py b/vitrage/evaluator/template_validation/content/template_content_validator_v3.py index 6b4292f76..26e83dd80 100644 --- a/vitrage/evaluator/template_validation/content/template_content_validator_v3.py +++ b/vitrage/evaluator/template_validation/content/template_content_validator_v3.py @@ -132,7 +132,7 @@ def _validate_not_condition_relationships_recursive(dnf_result): if isinstance(dnf_result, Not): for arg in dnf_result.args: if isinstance(arg, Symbol) and not str(arg).startswith(RELATION): - raise ValidationError(86, arg) + raise ValidationError(86, arg) else: _validate_not_condition_relationships_recursive(arg) return @@ -143,5 +143,5 @@ def _validate_not_condition_relationships_recursive(dnf_result): def _validate_positive_term_in_condition(dnf_condition): - if not dnf.is_condition_include_positive_clause(dnf_condition): - raise ValidationError(134) + if not dnf.is_condition_include_positive_clause(dnf_condition): + raise ValidationError(134) diff --git a/vitrage/hacking/checks.py b/vitrage/hacking/checks.py index 503d81d02..f73710ea5 100644 --- a/vitrage/hacking/checks.py +++ b/vitrage/hacking/checks.py @@ -19,10 +19,10 @@ mutable_default_args = re.compile(r"^\s*def .+\((.+={\}|.+=\[\])") asse_trueinst_re = re.compile( r"(.)*assertTrue\(isinstance\((\w|\.|\'|\"|\[|\])+, " - "(\w|\.|\'|\"|\[|\])+\)\)") + r"(\w|\.|\'|\"|\[|\])+\)\)") asse_equal_type_re = re.compile( r"(.)*assertEqual\(type\((\w|\.|\'|\"|\[|\])+\), " - "(\w|\.|\'|\"|\[|\])+\)") + r"(\w|\.|\'|\"|\[|\])+\)") asse_equal_end_with_none_re = re.compile( r"(.)*assertEqual\((\w|\.|\'|\"|\[|\])+, None\)") asse_equal_start_with_none_re = re.compile( diff --git a/vitrage/middleware/keycloak.py b/vitrage/middleware/keycloak.py index 6dfcc36e3..d0a3dad74 100644 --- a/vitrage/middleware/keycloak.py +++ b/vitrage/middleware/keycloak.py @@ -82,7 +82,7 @@ class KeycloakAuth(base.ConfigurableMiddleware): return realm_name def process_request(self, req): - self._authenticate(req) + self._authenticate(req) def _authenticate(self, req): decoded = {} diff --git a/vitrage/notifier/plugins/snmp/snmp_sender.py b/vitrage/notifier/plugins/snmp/snmp_sender.py index 0b07ef570..5ba19e159 100644 --- a/vitrage/notifier/plugins/snmp/snmp_sender.py +++ b/vitrage/notifier/plugins/snmp/snmp_sender.py @@ -40,8 +40,8 @@ NEXT = 'next' WITH_VALS = 'with_values' SEVERITY = 'SEVERITY' ALARM_OID = 'ALARM_OID' -IP_PAT = re.compile('\d+\.\d+\.\d+\.\d+') -PORT_PAT = re.compile('\d+') +IP_PAT = re.compile(r'\d+\.\d+\.\d+\.\d+') +PORT_PAT = re.compile(r'\d+') class SnmpSender(SnmpSenderBase): diff --git a/vitrage/notifier/plugins/webhook/webhook.py b/vitrage/notifier/plugins/webhook/webhook.py index 66d471989..085053d79 100644 --- a/vitrage/notifier/plugins/webhook/webhook.py +++ b/vitrage/notifier/plugins/webhook/webhook.py @@ -146,7 +146,7 @@ class Webhook(NotifierBase): if value is None: return False elif filter.match(value) is None: - return False + return False return True def _filter_fields(self, data): diff --git a/vitrage/tests/unit/entity_graph/test_transformer_manager.py b/vitrage/tests/unit/entity_graph/test_transformer_manager.py index f1feb9524..00639ea2d 100644 --- a/vitrage/tests/unit/entity_graph/test_transformer_manager.py +++ b/vitrage/tests/unit/entity_graph/test_transformer_manager.py @@ -43,8 +43,8 @@ class TransformerManagerTest(base.BaseTest): self.manager = TransformerManager() def test_transformer_registration_nagios(self): - self.assertIsInstance(self.manager.get_transformer - (NAGIOS_DATASOURCE), NagiosTransformer) + self.assertIsInstance(self.manager.get_transformer + (NAGIOS_DATASOURCE), NagiosTransformer) def test_transformer_registration_nova_host(self): self.assertIsInstance(self.manager.get_transformer diff --git a/vitrage/tests/unit/graph/test_graph.py b/vitrage/tests/unit/graph/test_graph.py index 3dbeb1fa6..355f53405 100644 --- a/vitrage/tests/unit/graph/test_graph.py +++ b/vitrage/tests/unit/graph/test_graph.py @@ -448,10 +448,10 @@ class TestGraph(GraphTestBase): self.final_result = None def _assert_none_or_equals(self, exp, act, msg): - if exp: - self.assertEqual(exp, act, msg) - else: - self.assertIsNone(act, msg) + if exp: + self.assertEqual(exp, act, msg) + else: + self.assertIsNone(act, msg) # noinspection PyAttributeOutsideInit def test_graph_callbacks(self): @@ -560,7 +560,7 @@ class TestFilter(base.BaseTest): attr_filter = { "vitrage_category": "ALARM", - "rawtext.regex": "Interface ([_a-zA-Z0-9'\-]+) down on {" + "rawtext.regex": r"Interface ([_a-zA-Z0-9'\-]+) down on {" "HOST.NAME}", "host": "some_host_kukoo" } @@ -578,7 +578,7 @@ class TestFilter(base.BaseTest): attr_filter = { "vitrage_category": "ALARM", - "rawtext.RegEx": "Interface ([_a-zA-Z0-9'\-]+) down on {" + "rawtext.RegEx": r"Interface ([_a-zA-Z0-9'\-]+) down on {" "HOST.NAME}", "host": "some_host_kukoo" }