[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[dak/master 1/2] Rewrite 'dak contents bootstrap_bin' to use ContentsScanner.



Signed-off-by: Torsten Werner <twerner@debian.org>
---
 dak/contents.py |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/dak/contents.py b/dak/contents.py
index e5fb129..e292ac9 100755
--- a/dak/contents.py
+++ b/dak/contents.py
@@ -48,6 +48,10 @@ from daklib import utils
 from daklib.binary import Binary
 from daklib.config import Config
 from daklib.dbconn import *
+from daklib.contents import ContentsScanner
+from daklib import daklog
+
+Logger = None
 
 ################################################################################
 
@@ -79,6 +83,9 @@ OPTIONS
 
      -s, --suite={stable,testing,unstable,...}
         only operate on a single suite
+
+     -l, --limit=NUMBER
+        optional package limit for bootstrap_bin
 """
     sys.exit(exit_code)
 
@@ -621,6 +628,12 @@ class Contents(object):
         return arch_list
 
 
+def scan_all(limit):
+    result = ContentsScanner.scan_all(limit)
+    processed = '%(processed)d packages processed' % result
+    remaining = '%(remaining)d packages remaining' % result
+    Logger([processed, remaining])
+
 ################################################################################
 
 def main():
@@ -628,6 +641,7 @@ def main():
 
     arguments = [('h',"help", "%s::%s" % (options_prefix,"Help")),
                  ('s',"suite", "%s::%s" % (options_prefix,"Suite"),"HasArg"),
+                 ('l',"limit", "%s::%s" % (options_prefix,"Limit"),"HasArg"),
                  ('q',"quiet", "%s::%s" % (options_prefix,"Quiet")),
                  ('v',"verbose", "%s::%s" % (options_prefix,"Verbose")),
                 ]
@@ -658,6 +672,16 @@ def main():
                          format='%(asctime)s %(levelname)s %(message)s',
                          stream = sys.stderr )
 
+    global Logger
+    Logger = daklog.Loggor(cnf.Conf, 'contents')
+
+    limit = None
+    if cnf.has_key("%s::%s" % (options_prefix,"Limit")):
+        limit = cnf["%s::%s" % (options_prefix,"Limit")]
+    if args[0] == 'bootstrap_bin':
+        scan_all(limit)
+        return
+
     commands[args[0]](Contents())
 
 def which_suites(session):
-- 
1.7.2.3



Reply to: