------------
o finish new cron.daily file
- o pg_dump & friends.
o finish rhona
o CD building scripts need fixing
- o need a way to sync katie.conf and the DB for things like architecture
- o need a poolifier that will poolify X mb a day.. (catherine)
-
- o Optimize all the queries by using EXAMINE and building some INDEXs
- o Need CIPE tunnel for pandora<->auric setup. [Culus] (?)
+ o charisma needs to do version compares
+
+ o Optimize all the queries by using EXAMINE and building some INDEXs.
+ o enclose all the setting SQL stuff in transactions (mostly done).
- o enclose all the setting SQL stuff in transactions
+ o ?assumes running in incoming? [needs to be runnable in p-u too]
+ o changelog udpate stuff for point releases.
- o ?assumes running in incoming? ?problem?
+ ==
- o project/orphaned should be a timed dist so that things only stay
- in there temporarily (say 3 months) [aj]
+ o need a poolifier that will poolify X mb a day.. (catherine)
+ o Need to merge non-non-US and non-US DBs.
==
o ability to rebuild all other tables from dists _or_ pools (in the event of disaster) (?)
o check errors on apt_pkg calls so we don't bomb out on daily runs (?)
o check to see if mutli-component binary packages from a single component source are supported
+ o need a way to sync katie.conf and the DB for things like architecture
===================================================================================================
Future Enhancements
-------------------
+ o project/orphaned should be a timed dist so that things only stay
+ in there temporarily (say 3 months) [aj]
o make the --help and --version options do stuff for all scripts
o check for .dsc when source is mentioneD?
o fix parse_changes()/build_file_list() to sanity check filenames
# DB access fucntions
# Copyright (C) 2000 James Troup <james@nocrew.org>
-# $Id: db_access.py,v 1.1.1.1 2000-11-24 00:20:09 troup Exp $
+# $Id: db_access.py,v 1.2 2000-11-27 03:15:26 troup Exp $
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
return suite_id_cache[suite]
q = projectB.query("SELECT id FROM suite WHERE suite_name = '%s'" % (suite))
+ ql = q.getresult();
+ if ql == []:
+ return -1;
+
suite_id = q.getresult()[0][0]
suite_id_cache[suite] = suite_id
# Installs Debian packaes
# Copyright (C) 2000 James Troup <james@nocrew.org>
-# $Id: katie,v 1.3 2000-11-26 16:35:41 troup Exp $
+# $Id: katie,v 1.4 2000-11-27 03:15:26 troup Exp $
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
def check_signature (filename):
global reject_message
- (result, output) = commands.getstatusoutput("gpg --emulate-md-encode-bug --batch --no-options --no-default-keyring --always-trust --load-extension rsaref --keyring=%s --keyring=%s < %s >/dev/null" % (Cnf["Dinstall::PGPKeyring"], Cnf["Dinstall::GPGKeyring"], filename))
+ (result, output) = commands.getstatusoutput("gpg --emulate-md-encode-bug --batch --no-options --no-default-keyring --always-trust --keyring=%s --keyring=%s < %s >/dev/null" % (Cnf["Dinstall::PGPKeyring"], Cnf["Dinstall::GPGKeyring"], filename))
if (result != 0):
reject_message = "Rejected: GPG signature check failed on `%s'.\n%s\n" % (filename, output)
return 0
def in_override_p (package, component, suite):
global overrides;
+ # Avoid <undef> on unknown distributions
+ if db_access.get_suite_id(suite) == -1:
+ return None;
+
# FIXME: nasty non-US speficic hack
if string.lower(component[:7]) == "non-us/":
component = component[7:];
summary = ""
for dist in changes["distribution"].keys():
- list = Cnf["Suite::%s::Announce" % (dist)]
- if lists_done.has_key(list):
+ list = Cnf.Find("Suite::%s::Announce" % (dist))
+ if list == None or lists_done.has_key(list):
continue
lists_done[list] = 1
summary = summary + "Announcing to %s\n" % (list)
# Utility functions
# Copyright (C) 2000 James Troup <james@nocrew.org>
-# $Id: utils.py,v 1.3 2000-11-26 16:35:41 troup Exp $
+# $Id: utils.py,v 1.4 2000-11-27 03:15:26 troup Exp $
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
res = socket.gethostbyaddr(socket.gethostname());
if res[0] == 'pandora.debian.org':
return 'non-US';
- elif res[1] == 'auric.debian.org':
+ elif res[0] == 'auric.debian.org':
return 'ftp-master';
else:
raise unknown_hostname_exc, res;