]> git.decadent.org.uk Git - dak.git/commitdiff
Add subcommand source-scan to 'dak contents'.
authorTorsten Werner <twerner@debian.org>
Wed, 23 Mar 2011 19:11:41 +0000 (20:11 +0100)
committerTorsten Werner <twerner@debian.org>
Wed, 23 Mar 2011 19:11:41 +0000 (20:11 +0100)
Signed-off-by: Torsten Werner <twerner@debian.org>
config/debian/cron.unchecked
dak/contents.py

index 7b81e511e2878843ae34ef733ace8ca24463b4b9..10bd930c81add3e7aab0ea43f0b8db3467398cdc 100755 (executable)
@@ -106,5 +106,5 @@ if [ ! -z "$changes" ]; then
     do_dists
 fi
 
-dak contents -l 10000 scan
+dak contents -l 10000 binary-scan
 pg_timestamp postunchecked
index ff3a97d5bfc69756981c23b238d56db66a51f756..efe9a1496c8106b29c2c9b5254a4b518a8188c99 100755 (executable)
@@ -53,8 +53,13 @@ SUBCOMMANDS
     generate
         generate Contents-$arch.gz files
 
-    scan
-        scan the debs in the existing pool and load contents into the bin_contents table
+    binary-scan
+        scan the (u)debs in the existing pool and load contents into the
+        bin_contents table
+
+    source-scan
+        scan the source packages in the existing pool and load contents into
+        the src_contents table
 
 OPTIONS
      -h, --help
@@ -67,7 +72,7 @@ OPTIONS for generate
      -f, --force
         write Contents files for suites marked as untouchable, too
 
-OPTIONS for scan
+OPTIONS for binary-scan and source-scan
      -l, --limit=NUMBER
         maximum number of packages to scan
 """
@@ -82,8 +87,8 @@ def write_all(cnf, suite_names = [], force = None):
 
 ################################################################################
 
-def scan_all(cnf, limit):
-    Logger = daklog.Logger(cnf.Cnf, 'contents scan')
+def binary_scan_all(cnf, limit):
+    Logger = daklog.Logger(cnf.Cnf, 'contents binary_scan')
     result = BinaryContentsScanner.scan_all(limit)
     processed = '%(processed)d packages processed' % result
     remaining = '%(remaining)d packages remaining' % result
@@ -92,6 +97,16 @@ def scan_all(cnf, limit):
 
 ################################################################################
 
+def source_scan_all(cnf, limit):
+    Logger = daklog.Logger(cnf.Cnf, 'contents source_scan')
+    result = SourceContentsScanner.scan_all(limit)
+    processed = '%(processed)d packages processed' % result
+    remaining = '%(remaining)d packages remaining' % result
+    Logger.log([processed, remaining])
+    Logger.close()
+
+################################################################################
+
 def main():
     cnf = Config()
     cnf['Contents::Options::Help'] = ''
@@ -113,8 +128,12 @@ def main():
     if len(options['Limit']) > 0:
         limit = int(options['Limit'])
 
-    if args[0] == 'scan':
-        scan_all(cnf, limit)
+    if args[0] == 'binary_scan':
+        binary_scan_all(cnf, limit)
+        return
+
+    if args[0] == 'source_scan':
+        source_scan_all(cnf, limit)
         return
 
     suite_names = utils.split_args(options['Suite'])