commit: b808cf28d451235f53d38d70d04a30838dce07a7
Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 2 01:48:31 2014 +0000
Commit: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com>
CommitDate: Mon Jun 2 01:48:31 2014 +0000
URL:
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=b808cf28
Repoman Manifests: Move some additional code to manifests.py
Move the digest check to the Manifests class.
Optimize usage to use the new qatracker system.
---
pym/repoman/checks/ebuilds/manifests.py | 20 +++++++++++++++-----
pym/repoman/main.py | 14 ++++----------
2 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/pym/repoman/checks/ebuilds/manifests.py
b/pym/repoman/checks/ebuilds/manifests.py
index 53c3136..c9eda54 100644
--- a/pym/repoman/checks/ebuilds/manifests.py
+++ b/pym/repoman/checks/ebuilds/manifests.py
@@ -11,8 +11,9 @@ from portage.util import writemsg_level
class Manifests(object):
- def __init__(self, options, repoman_settings):
+ def __init__(self, options, qatracker, repoman_settings):
self.options = options
+ self.qatracker = qatracker
self.repoman_settings = repoman_settings
self.digest_only = options.mode != 'manifest-check' and
options.digest == 'y'
@@ -41,7 +42,8 @@ class Manifests(object):
level=logging.ERROR, noiselevel=-1)
if not self.generated_manifest:
- print("Unable to generate manifest.")
+ writemsg_level("Unable to generate manifest.",
+ level=logging.ERROR, noiselevel=-1)
failed = True
if self.options.mode == "manifest":
@@ -64,11 +66,11 @@ class Manifests(object):
if distfile in
self.auto_assumed:
portage.writemsg_stdout(
"
%s::%s\n" % (pf, distfile))
-
- return True # continue, skip remaining loop
code
+ # continue, skip remaining main loop code
+ return True
elif failed:
sys.exit(1)
- return False # stay in the loop
+ return False
def create_manifest(self, checkdir, fetchlist_dict):
@@ -89,3 +91,11 @@ class Manifests(object):
mf.write()
finally:
portage._doebuild_manifest_exempt_depend -= 1
+
+
+ def digest_check(self, checkdir):
+ self.repoman_settings['O'] = checkdir
+ self.repoman_settings['PORTAGE_QUIET'] = '1'
+ if not portage.digestcheck([], self.repoman_settings, strict=1):
+ self.qatracker.add_error("manifest.bad",
os.path.join(xpkg, 'Manifest'))
+ self.repoman_settings.pop('PORTAGE_QUIET', None)
diff --git a/pym/repoman/main.py b/pym/repoman/main.py
index af7c52b..1649c9f 100755
--- a/pym/repoman/main.py
+++ b/pym/repoman/main.py
@@ -326,18 +326,12 @@ for xpkg in effective_scanlist:
checkdir_relative = os.path.join(".", checkdir_relative)
#####################
- manifester = Manifests(options, repoman_settings)
- continue_ = manifester.run(checkdir, portdb)
- if continue_:
+ manifester = Manifests(options, qatracker, repoman_settings)
+ if manifester.run(checkdir, portdb):
continue
-######################
-
if not manifester.generated_manifest:
- repoman_settings['O'] = checkdir
- repoman_settings['PORTAGE_QUIET'] = '1'
- if not portage.digestcheck([], repoman_settings, strict=1):
- qatracker.add_error("manifest.bad", os.path.join(xpkg,
'Manifest'))
- repoman_settings.pop('PORTAGE_QUIET', None)
+ manifester.digest_check(checkdir)
+######################
if options.mode == 'manifest-check':
continue