X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fprocess_accepted.py;h=86396832e741e864fb8355ce976d06927235efd6;hb=e2e32f8130e1e9a69acc5a5cb24f9d3de3330a42;hp=18b5b056ebc2061207d7437074a5495f6155ffad;hpb=6c751fd9cc4c8ba9df6e382a2a99771358b49c2d;p=dak.git diff --git a/dak/process_accepted.py b/dak/process_accepted.py index 18b5b056..86396832 100755 --- a/dak/process_accepted.py +++ b/dak/process_accepted.py @@ -281,6 +281,9 @@ def install (): maintainer = dsc["maintainer"] maintainer = maintainer.replace("'", "\\'") maintainer_id = daklib.database.get_or_set_maintainer_id(maintainer) + changedby = changes["changed-by"] + changedby = changedby.replace("'", "\\'") + changedby_id = daklib.database.get_or_set_maintainer_id(changedby) fingerprint_id = daklib.database.get_or_set_fingerprint_id(dsc["fingerprint"]) install_date = time.strftime("%Y-%m-%d") filename = files[file]["pool name"] + file @@ -288,8 +291,8 @@ def install (): dsc_location_id = files[file]["location id"] if not files[file].has_key("files id") or not files[file]["files id"]: files[file]["files id"] = daklib.database.set_files_id (filename, files[file]["size"], files[file]["md5sum"], dsc_location_id) - projectB.query("INSERT INTO source (source, version, maintainer, file, install_date, sig_fpr) VALUES ('%s', '%s', %d, %d, '%s', %s)" - % (package, version, maintainer_id, files[file]["files id"], install_date, fingerprint_id)) + projectB.query("INSERT INTO source (source, version, maintainer, changedby, file, install_date, sig_fpr) VALUES ('%s', '%s', %d, %d, %d, '%s', %s)" + % (package, version, maintainer_id, changedby_id, files[file]["files id"], install_date, fingerprint_id)) for suite in changes["distribution"].keys(): suite_id = daklib.database.get_suite_id(suite) @@ -309,6 +312,24 @@ def install (): files_id = daklib.database.set_files_id (filename, dsc_files[dsc_file]["size"], dsc_files[dsc_file]["md5sum"], dsc_location_id) projectB.query("INSERT INTO dsc_files (source, file) VALUES (currval('source_id_seq'), %d)" % (files_id)) + # Add the src_uploaders to the DB + if dsc.get("dm-upload-allowed", "no") == "yes": + uploader_ids = [maintainer_id] + if dsc.has_key("uploaders"): + for u in dsc["uploaders"].split(","): + u = u.replace("'", "\\'") + u = u.strip() + uploader_ids.append( + daklib.database.get_or_set_maintainer_id(u)) + added_ids = {} + for u in uploader_ids: + if added_ids.has_key(u): + daklib.utils.warn("Already saw uploader %s for source %s" % (u, package)) + continue + added_ids[u]=1 + projectB.query("INSERT INTO src_uploaders (source, maintainer) VALUES (currval('source_id_seq'), %d)" % (u)) + + # Add the .deb files to the DB for file in files.keys(): if files[file]["type"] == "deb":