From: Joerg Jaspert Date: Sat, 3 May 2008 23:54:14 +0000 (+0200) Subject: Use "import daklib.foo as foo" style X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c7dcd7eda8d0ee0d758ff6ce87991d319586ba00;p=dak Use "import daklib.foo as foo" style --- diff --git a/ChangeLog b/ChangeLog index 02bc6a57..d939879b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -13,6 +13,7 @@ * dak/find_null_maintainers.py: likewise * dak/generate_index_diffs.py: likewise * dak/generate_releases.py: likewise + * dak/import_archive.py: likewise * dak/check_archive.py (check_files_not_symlinks): Remove long-time unused and commented code. Import stuff from daklib as diff --git a/dak/import_archive.py b/dak/import_archive.py old mode 100644 new mode 100755 index 82def1e6..b8884ab2 --- a/dak/import_archive.py +++ b/dak/import_archive.py @@ -38,8 +38,8 @@ import commands, os, pg, re, sys, time import apt_pkg -import daklib.database -import daklib.utils +import daklib.database as database +import daklib.utils as utils ############################################################################### @@ -93,14 +93,14 @@ def reject (str, prefix="Rejected: "): ############################################################################### def check_signature (filename): - if not daklib.utils.re_taint_free.match(os.path.basename(filename)): + if not utils.re_taint_free.match(os.path.basename(filename)): reject("!!WARNING!! tainted filename: '%s'." % (filename)) return None status_read, status_write = os.pipe() cmd = "gpgv --status-fd %s %s %s" \ - % (status_write, daklib.utils.gpg_keyring_args(), filename) - (output, status, exit_status) = daklib.utils.gpgv_get_status_output(cmd, status_read, status_write) + % (status_write, utils.gpg_keyring_args(), filename) + (output, status, exit_status) = utils.gpgv_get_status_output(cmd, status_read, status_write) # Process the status-fd output keywords = {} @@ -133,7 +133,7 @@ def check_signature (filename): # Now check for obviously bad things in the processed output if keywords.has_key("SIGEXPIRED"): - daklib.utils.warn("%s: signing key has expired." % (filename)) + utils.warn("%s: signing key has expired." % (filename)) if keywords.has_key("KEYREVOKED"): reject("key used to sign %s has been revoked." % (filename)) bad = 1 @@ -154,7 +154,7 @@ def check_signature (filename): reject("ascii armour of signature was corrupt in %s." % (filename)) bad = 1 if keywords.has_key("NODATA"): - daklib.utils.warn("no signature found for %s." % (filename)) + utils.warn("no signature found for %s." % (filename)) return "NOSIG" #reject("no signature found in %s." % (filename)) #bad = 1 @@ -166,9 +166,9 @@ def check_signature (filename): if exit_status and not keywords.has_key("NO_PUBKEY"): reject("gpgv failed while checking %s." % (filename)) if status.strip(): - reject(daklib.utils.prefix_multi_line_string(status, " [GPG status-fd output:] "), "") + reject(utils.prefix_multi_line_string(status, " [GPG status-fd output:] "), "") else: - reject(daklib.utils.prefix_multi_line_string(output, " [GPG output:] "), "") + reject(utils.prefix_multi_line_string(output, " [GPG output:] "), "") return None # Sanity check the good stuff we expect @@ -191,7 +191,7 @@ def check_signature (filename): bad = 1 # Finally ensure there's not something we don't recognise - known_keywords = daklib.utils.Dict(VALIDSIG="",SIG_ID="",GOODSIG="",BADSIG="",ERRSIG="", + known_keywords = utils.Dict(VALIDSIG="",SIG_ID="",GOODSIG="",BADSIG="",ERRSIG="", SIGEXPIRED="",KEYREVOKED="",NO_PUBKEY="",BADARMOR="", NODATA="") @@ -232,13 +232,13 @@ def update_locations (): projectB.query("DELETE FROM location") for location in Cnf.SubTree("Location").List(): SubSec = Cnf.SubTree("Location::%s" % (location)) - archive_id = daklib.database.get_archive_id(SubSec["archive"]) + archive_id = database.get_archive_id(SubSec["archive"]) type = SubSec.Find("type") if type == "legacy-mixed": projectB.query("INSERT INTO location (path, archive, type) VALUES ('%s', %d, '%s')" % (location, archive_id, SubSec["type"])) else: for component in Cnf.SubTree("Component").List(): - component_id = daklib.database.get_component_id(component) + component_id = database.get_component_id(component) projectB.query("INSERT INTO location (path, component, archive, type) VALUES ('%s', %d, %d, '%s')" % (location, component_id, archive_id, SubSec["type"])) @@ -256,7 +256,7 @@ def update_suites (): if SubSec.has_key(i): projectB.query("UPDATE suite SET %s = '%s' WHERE suite_name = '%s'" % (i.lower(), SubSec[i], suite.lower())) for architecture in Cnf.ValueList("Suite::%s::Architectures" % (suite)): - architecture_id = daklib.database.get_architecture_id (architecture) + architecture_id = database.get_architecture_id (architecture) projectB.query("INSERT INTO suite_architectures (suite, architecture) VALUES (currval('suite_id_seq'), %d)" % (architecture_id)) def update_override_type(): @@ -297,7 +297,7 @@ def get_location_path(directory): try: path = q.getresult()[0][0] except: - daklib.utils.fubar("[import-archive] get_location_path(): Couldn't get path for %s" % (directory)) + utils.fubar("[import-archive] get_location_path(): Couldn't get path for %s" % (directory)) location_path_cache[directory] = path return path @@ -320,41 +320,41 @@ def process_sources (filename, suite, component, archive): global source_cache, source_query_cache, src_associations_query_cache, dsc_files_query_cache, source_id_serial, src_associations_id_serial, dsc_files_id_serial, source_cache_for_binaries, orig_tar_gz_cache, reject_message suite = suite.lower() - suite_id = daklib.database.get_suite_id(suite) + suite_id = database.get_suite_id(suite) try: - file = daklib.utils.open_file (filename) - except daklib.utils.cant_open_exc: - daklib.utils.warn("can't open '%s'" % (filename)) + file = utils.open_file (filename) + except utils.cant_open_exc: + utils.warn("can't open '%s'" % (filename)) return Scanner = apt_pkg.ParseTagFile(file) while Scanner.Step() != 0: package = Scanner.Section["package"] version = Scanner.Section["version"] directory = Scanner.Section["directory"] - dsc_file = os.path.join(Cnf["Dir::Root"], directory, "%s_%s.dsc" % (package, daklib.utils.re_no_epoch.sub('', version))) + dsc_file = os.path.join(Cnf["Dir::Root"], directory, "%s_%s.dsc" % (package, utils.re_no_epoch.sub('', version))) # Sometimes the Directory path is a lie; check in the pool if not os.path.exists(dsc_file): if directory.split('/')[0] == "dists": - directory = Cnf["Dir::PoolRoot"] + daklib.utils.poolify(package, component) - dsc_file = os.path.join(Cnf["Dir::Root"], directory, "%s_%s.dsc" % (package, daklib.utils.re_no_epoch.sub('', version))) + directory = Cnf["Dir::PoolRoot"] + utils.poolify(package, component) + dsc_file = os.path.join(Cnf["Dir::Root"], directory, "%s_%s.dsc" % (package, utils.re_no_epoch.sub('', version))) if not os.path.exists(dsc_file): - daklib.utils.fubar("%s not found." % (dsc_file)) + utils.fubar("%s not found." % (dsc_file)) install_date = time.strftime("%Y-%m-%d", time.localtime(os.path.getmtime(dsc_file))) fingerprint = check_signature(dsc_file) - fingerprint_id = daklib.database.get_or_set_fingerprint_id(fingerprint) + fingerprint_id = database.get_or_set_fingerprint_id(fingerprint) if reject_message: - daklib.utils.fubar("%s: %s" % (dsc_file, reject_message)) + utils.fubar("%s: %s" % (dsc_file, reject_message)) maintainer = Scanner.Section["maintainer"] maintainer = maintainer.replace("'", "\\'") - maintainer_id = daklib.database.get_or_set_maintainer_id(maintainer) + maintainer_id = database.get_or_set_maintainer_id(maintainer) location = get_location_path(directory.split('/')[0]) - location_id = daklib.database.get_location_id (location, component, archive) + location_id = database.get_location_id (location, component, archive) if not directory.endswith("/"): directory += '/' directory = poolify (directory, location) if directory != "" and not directory.endswith("/"): directory += '/' - no_epoch_version = daklib.utils.re_no_epoch.sub('', version) + no_epoch_version = utils.re_no_epoch.sub('', version) # Add all files referenced by the .dsc to the files table ids = [] for line in Scanner.Section["files"].split('\n'): @@ -403,11 +403,11 @@ def process_packages (filename, suite, component, archive): count_total = 0 count_bad = 0 suite = suite.lower() - suite_id = daklib.database.get_suite_id(suite) + suite_id = database.get_suite_id(suite) try: - file = daklib.utils.open_file (filename) - except daklib.utils.cant_open_exc: - daklib.utils.warn("can't open '%s'" % (filename)) + file = utils.open_file (filename) + except utils.cant_open_exc: + utils.warn("can't open '%s'" % (filename)) return Scanner = apt_pkg.ParseTagFile(file) while Scanner.Step() != 0: @@ -415,25 +415,25 @@ def process_packages (filename, suite, component, archive): version = Scanner.Section["version"] maintainer = Scanner.Section["maintainer"] maintainer = maintainer.replace("'", "\\'") - maintainer_id = daklib.database.get_or_set_maintainer_id(maintainer) + maintainer_id = database.get_or_set_maintainer_id(maintainer) architecture = Scanner.Section["architecture"] - architecture_id = daklib.database.get_architecture_id (architecture) + architecture_id = database.get_architecture_id (architecture) fingerprint = "NOSIG" - fingerprint_id = daklib.database.get_or_set_fingerprint_id(fingerprint) + fingerprint_id = database.get_or_set_fingerprint_id(fingerprint) if not Scanner.Section.has_key("source"): source = package else: source = Scanner.Section["source"] source_version = "" if source.find("(") != -1: - m = daklib.utils.re_extract_src_version.match(source) + m = utils.re_extract_src_version.match(source) source = m.group(1) source_version = m.group(2) if not source_version: source_version = version filename = Scanner.Section["filename"] location = get_location_path(filename.split('/')[0]) - location_id = daklib.database.get_location_id (location, component, archive) + location_id = database.get_location_id (location, component, archive) filename = poolify (filename, location) if architecture == "all": filename = re_arch_from_filename.sub("binary-all", filename) @@ -473,10 +473,10 @@ def process_packages (filename, suite, component, archive): ############################################################################### def do_sources(sources, suite, component, server): - temp_filename = daklib.utils.temp_filename() + temp_filename = utils.temp_filename() (result, output) = commands.getstatusoutput("gunzip -c %s > %s" % (sources, temp_filename)) if (result != 0): - daklib.utils.fubar("Gunzip invocation failed!\n%s" % (output), result) + utils.fubar("Gunzip invocation failed!\n%s" % (output), result) print 'Processing '+sources+'...' process_sources (temp_filename, suite, component, server) os.unlink(temp_filename) @@ -486,7 +486,7 @@ def do_sources(sources, suite, component, server): def do_da_do_da (): global Cnf, projectB, query_cache, files_query_cache, source_query_cache, src_associations_query_cache, dsc_files_query_cache, bin_associations_query_cache, binaries_query_cache - Cnf = daklib.utils.get_conf() + Cnf = utils.get_conf() Arguments = [('a', "action", "Import-Archive::Options::Action"), ('h', "help", "Import-Archive::Options::Help")] for i in [ "action", "help" ]: @@ -500,7 +500,7 @@ def do_da_do_da (): usage() if not Options["Action"]: - daklib.utils.warn("""no -a/--action given; not doing anything. + utils.warn("""no -a/--action given; not doing anything. Please read the documentation before running this script. """) usage(1) @@ -508,12 +508,12 @@ Please read the documentation before running this script. print "Re-Creating DB..." (result, output) = commands.getstatusoutput("psql -f init_pool.sql template1") if (result != 0): - daklib.utils.fubar("psql invocation failed!\n", result) + utils.fubar("psql invocation failed!\n", result) print output projectB = pg.connect(Cnf["DB::Name"], Cnf["DB::Host"], int(Cnf["DB::Port"])) - daklib.database.init (Cnf, projectB) + database.init (Cnf, projectB) print "Adding static tables from conf file..." projectB.query("BEGIN WORK") @@ -527,12 +527,12 @@ Please read the documentation before running this script. update_section() projectB.query("COMMIT WORK") - files_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"files","w") - source_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"source","w") - src_associations_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"src_associations","w") - dsc_files_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"dsc_files","w") - binaries_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"binaries","w") - bin_associations_query_cache = daklib.utils.open_file(Cnf["Import-Archive::ExportDir"]+"bin_associations","w") + files_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"files","w") + source_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"source","w") + src_associations_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"src_associations","w") + dsc_files_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"dsc_files","w") + binaries_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"binaries","w") + bin_associations_query_cache = utils.open_file(Cnf["Import-Archive::ExportDir"]+"bin_associations","w") projectB.query("BEGIN WORK") # Process Sources files to popoulate `source' and friends @@ -550,7 +550,7 @@ Please read the documentation before running this script. sources = Cnf["Dir::Root"] + "dists/" + Cnf["Suite::%s::CodeName" % (suite)] + '/' + component + '/source/' + 'Sources.gz' do_sources(sources, suite, component, server) else: - daklib.utils.fubar("Unknown location type ('%s')." % (type)) + utils.fubar("Unknown location type ('%s')." % (type)) # Process Packages files to populate `binaries' and friends @@ -566,7 +566,7 @@ Please read the documentation before running this script. elif type == "legacy" or type == "pool": for suite in Cnf.ValueList("Location::%s::Suites" % (location)): for component in Cnf.SubTree("Component").List(): - architectures = filter(daklib.utils.real_arch, + architectures = filter(utils.real_arch, Cnf.ValueList("Suite::%s::Architectures" % (suite))) for architecture in architectures: packages = Cnf["Dir::Root"] + "dists/" + Cnf["Suite::%s::CodeName" % (suite)] + '/' + component + '/binary-' + architecture + '/Packages' @@ -601,14 +601,14 @@ Please read the documentation before running this script. (result, output) = commands.getstatusoutput("psql %s < add_constraints.sql" % (Cnf["DB::Name"])) print output if (result != 0): - daklib.utils.fubar("psql invocation failed!\n%s" % (output), result) + utils.fubar("psql invocation failed!\n%s" % (output), result) return ################################################################################ def main(): - daklib.utils.try_with_debug(do_da_do_da) + utils.try_with_debug(do_da_do_da) ################################################################################