From 9cd69b58a8cea8bcbbc9c44f6abecc813a7a2db8 Mon Sep 17 00:00:00 2001 From: Lukas Holecek Date: Nov 20 2019 09:41:43 +0000 Subject: Fix default generic subject type attributes Makes sure that all attributes for generic subject type are set. Signed-off-by: Lukas Holecek --- diff --git a/greenwave/subjects/subject_type.py b/greenwave/subjects/subject_type.py index 6e9850b..f4bc50e 100644 --- a/greenwave/subjects/subject_type.py +++ b/greenwave/subjects/subject_type.py @@ -15,19 +15,6 @@ from greenwave.safe_yaml import ( ) -class GenericSubjectType: - def __init__(self, id_): - self.id = id_ - self.aliases = [] - self.is_koji_build = True - self.is_nvr = False - self.supports_remote_rule = False - self.product_version = None - self.item_dict = {} - self.result_queries = [] - self.latest_result_unique_keys = [] - - class SubjectType(SafeYAMLObject): root_yaml_tag = '!SubjectType' @@ -76,6 +63,18 @@ class SubjectType(SafeYAMLObject): return 'SubjectType {!r}'.format(self.id) +class GenericSubjectType: + def __init__(self, id_): + self._set_default_attributes() + self.id = id_ + self.is_koji_build = True + self.is_nvr = False + + def _set_default_attributes(self): + for name, attr in SubjectType.safe_yaml_attributes.items(): + self.__setattr__(name, attr.default_value) + + def load_subject_types(subject_types_dir): """ Load Greenwave subject types from the given directory.