diff options
Diffstat (limited to 'lib/portage/sync/controller.py')
-rw-r--r-- | lib/portage/sync/controller.py | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/lib/portage/sync/controller.py b/lib/portage/sync/controller.py index 987aa5481..da593e1a8 100644 --- a/lib/portage/sync/controller.py +++ b/lib/portage/sync/controller.py @@ -89,13 +89,20 @@ class SyncManager: # files have sane permissions. os.umask(0o22) - self.module_controller = portage.sync.module_controller - self.module_names = self.module_controller.module_names self.hooks = {} for _dir in ["repo.postsync.d", "postsync.d"]: hooks = get_hooks_from_dir(_dir, prefix=self.settings["PORTAGE_CONFIGROOT"]) self.hooks[_dir] = hooks + @property + def module_controller(self): + # Not stored as local attribute because it's not picklable. + return portage.sync.module_controller + + @property + def module_names(self): + return self.module_controller.module_names + def __getattr__(self, name): if name == "async": warnings.warn( @@ -137,7 +144,7 @@ class SyncManager: if repo.sync_type in self.module_names: tasks = [self.module_controller.get_class(repo.sync_type)] else: - msg = "\n%s: Sync module '%s' is not an installed/known type'\n" % ( + msg = "\n{}: Sync module '{}' is not an installed/known type'\n".format( bad("ERROR"), repo.sync_type, ) @@ -176,7 +183,7 @@ class SyncManager: self.exitcode = exitcode self.updatecache_flg = updatecache_flg if exitcode == 0: - msg = "=== Sync completed for %s" % self.repo.name + msg = f"=== Sync completed for {self.repo.name}" self.logger(self.xterm_titles, msg) writemsg_level(msg + "\n") if self.callback: @@ -190,7 +197,7 @@ class SyncManager: _hooks = self.hooks["postsync.d"] for filepath in _hooks: writemsg_level( - "Spawning post_sync hook: %s\n" % (_unicode_decode(_hooks[filepath])), + f"Spawning post_sync hook: {_unicode_decode(_hooks[filepath])}\n", level=logging.ERROR, noiselevel=4, ) @@ -212,7 +219,7 @@ class SyncManager: return succeeded def pre_sync(self, repo): - msg = ">>> Syncing repository '%s' into '%s'..." % (repo.name, repo.location) + msg = f">>> Syncing repository '{repo.name}' into '{repo.location}'..." self.logger(self.xterm_titles, msg) writemsg_level(msg + "\n") try: @@ -248,7 +255,7 @@ class SyncManager: pw = pwd.getpwuid(int(username)) except (ValueError, KeyError): writemsg( - "!!! User '%s' invalid or does not exist\n" % username, + f"!!! User '{username}' invalid or does not exist\n", noiselevel=-1, ) return (logname, user, group, home) @@ -266,7 +273,7 @@ class SyncManager: pw = grp.getgrgid(int(groupname)) except (ValueError, KeyError): writemsg( - "!!! Group '%s' invalid or does not exist\n" % groupname, + f"!!! Group '{groupname}' invalid or does not exist\n", noiselevel=-1, ) return (logname, user, group, home) @@ -364,7 +371,6 @@ class SyncManager: if updatecache_flg and os.path.exists( os.path.join(repo.location, "metadata", "md5-cache") ): - # Only update cache for repo.location since that's # the only one that's been synced here. action_metadata( |