From: Michael Tremer Date: Wed, 29 Feb 2012 10:10:33 +0000 (+0100) Subject: Update repositories only when they are actually enabled. X-Git-Tag: 0.9.21~30 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8fe602a7c5b3de4c4531d05c0dc1cf4d6bb9fb06;p=pakfire.git Update repositories only when they are actually enabled. --- diff --git a/python/pakfire/cli.py b/python/pakfire/cli.py index 8bab886fd..7a9490062 100644 --- a/python/pakfire/cli.py +++ b/python/pakfire/cli.py @@ -768,8 +768,14 @@ class CliBuilderIntern(Cli): conf = config.ConfigBuilder() + if self.args.nodeps: + disable_repos = ["*"] + else: + disable_repos = None + pakfire._build(pkg, builder_mode=self.args.mode, config=conf, - arch=self.args.arch, resultdir=self.args.resultdir) + disable_repos=disable_repos, arch=self.args.arch, + resultdir=self.args.resultdir) class CliClient(Cli): diff --git a/python/pakfire/repository/__init__.py b/python/pakfire/repository/__init__.py index f6b2f6e60..39872da4d 100644 --- a/python/pakfire/repository/__init__.py +++ b/python/pakfire/repository/__init__.py @@ -68,6 +68,10 @@ class Repositories(object): # Disable all repositories here as demanded on commandline if disable_repos: + # * is magic to disable all repositories. + if "*" in disable_repos: + disable_repos = [r.name for r in self] + for repo in disable_repos: self.disable_repo(repo) diff --git a/python/pakfire/repository/base.py b/python/pakfire/repository/base.py index 7fb836207..59d8615b9 100644 --- a/python/pakfire/repository/base.py +++ b/python/pakfire/repository/base.py @@ -115,7 +115,8 @@ class RepositoryFactory(object): """ assert self.index - self.index.update(force, offline=offline) + if force or self.enabled: + self.index.update(force, offline=offline) def clean(self): """