diff --git a/module_build_service/builder.py b/module_build_service/builder.py index b265130d..5ba68216 100644 --- a/module_build_service/builder.py +++ b/module_build_service/builder.py @@ -240,6 +240,19 @@ class GenericBuilder(six.with_metaclass(ABCMeta)): """ raise NotImplementedError() + def finalize(self): + """ + :return: None + + This method is supposed to be called after all module builds are + successfully finished. + + It could be utilized for various purposes such as cleaning or + running additional build-system based operations on top of + finished builds (e.g. for copr - composing them into module) + """ + pass + @classmethod @abstractmethod def repo_from_tag(self, config, tag_name, arch): diff --git a/module_build_service/scheduler/handlers/repos.py b/module_build_service/scheduler/handlers/repos.py index 191005a8..ce776b1a 100644 --- a/module_build_service/scheduler/handlers/repos.py +++ b/module_build_service/scheduler/handlers/repos.py @@ -139,3 +139,4 @@ def done(config, session, msg): else: module_build.transition(config, state=models.BUILD_STATES['done']) session.commit() + builder.finalize()