aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/portage/sync/controller.py')
-rw-r--r--lib/portage/sync/controller.py24
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(