- for directory in directories:
- changes_files = glob.glob("%s/*.changes" % (Cnf["Dir::Queue::%s" % (directory)]))
- process_changes_files(changes_files, directory)
+ queue_names = [ ]
+
+ if Cnf.has_key("Queue-Report::Options::Directories"):
+ for i in Cnf["Queue-Report::Options::Directories"].split(","):
+ queue_names.append(i)
+ elif Cnf.has_key("Queue-Report::Directories"):
+ queue_names = Cnf.ValueList("Queue-Report::Directories")
+ else:
+ queue_names = [ "byhand", "new" ]
+
+ if Cnf.has_key("Queue-Report::Options::Rrd"):
+ rrd_dir = Cnf["Queue-Report::Options::Rrd"]
+ elif Cnf.has_key("Dir::Rrd"):
+ rrd_dir = Cnf["Dir::Rrd"]
+ else:
+ rrd_dir = None
+
+ f = None
+ if Cnf.has_key("Queue-Report::Options::822"):
+ # Open the report file
+ f = open(Cnf["Queue-Report::ReportLocations::822Location"], "w")
+
+ session = dbconn.session()
+
+ for queue_name in queue_names:
+ queue = get_policy_queue(queue_name, session)
+ if queue:
+ directory = os.path.abspath(queue.path)
+ changes_files = glob.glob("%s/*.changes" % (directory))
+ process_changes_files(changes_files, os.path.basename(directory), f, rrd_dir)
+ else:
+ utils.warn("Cannot find queue %s" % queue_name)
+
+ if Cnf.has_key("Queue-Report::Options::822"):
+ f.close()