[Collab-qa-commits] r1977 - in udd: . sql udd
Lucas Nussbaum
lucas at alioth.debian.org
Wed Jul 27 18:12:46 UTC 2011
Author: lucas
Date: 2011-07-27 18:12:46 +0000 (Wed, 27 Jul 2011)
New Revision: 1977
Modified:
udd/config-org.yaml
udd/sql/setup.sql
udd/udd/dehs_gatherer.py
Log:
update the dehs importer to use the Mole version
Modified: udd/config-org.yaml
===================================================================
--- udd/config-org.yaml 2011-07-27 17:22:32 UTC (rev 1976)
+++ udd/config-org.yaml 2011-07-27 18:12:46 UTC (rev 1977)
@@ -555,7 +555,7 @@
dehs:
type: dehs
- update-command: rm -f /org/udd.debian.org/mirrors/dehs.txt && wget -q http://dehs.alioth.debian.org/udd_dump.txt -O /org/udd.debian.org/mirrors/dehs.txt
+ update-command: rm -f /org/udd.debian.org/mirrors/dehs.txt && wget -q http://qa.debian.org/cgi-bin/udd-dehs -O /org/udd.debian.org/mirrors/dehs.txt
path: /org/udd.debian.org/mirrors/dehs.txt
ldap:
Modified: udd/sql/setup.sql
===================================================================
--- udd/sql/setup.sql 2011-07-27 17:22:32 UTC (rev 1976)
+++ udd/sql/setup.sql 2011-07-27 18:12:46 UTC (rev 1977)
@@ -622,7 +622,7 @@
GRANT SELECT ON active_dds TO PUBLIC;
-- DEHS
-CREATE TYPE dehs_status AS ENUM('error', 'uptodate', 'outdated');
+CREATE TYPE dehs_status AS ENUM('error', 'uptodate', 'outdated', 'newer-in-debian');
CREATE TABLE dehs (
source TEXT NOT NULL,
unstable_version debversion,
Modified: udd/udd/dehs_gatherer.py
===================================================================
--- udd/udd/dehs_gatherer.py 2011-07-27 17:22:32 UTC (rev 1976)
+++ udd/udd/dehs_gatherer.py 2011-07-27 18:12:46 UTC (rev 1977)
@@ -19,6 +19,7 @@
from aux import quote
from gatherer import gatherer
import re
+import yaml
def get_gatherer(connection, config, source):
return dehs_gatherer(connection, config, source)
@@ -40,29 +41,30 @@
cur.execute("""PREPARE dehs_insert
AS INSERT INTO dehs
- (source, unstable_version, unstable_upstream, unstable_parsed_version, unstable_status, unstable_last_uptodate,
- experimental_version, experimental_upstream, experimental_parsed_version, experimental_status, experimental_last_uptodate)
- VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11)""")
+ (source, unstable_version, unstable_upstream, unstable_parsed_version, unstable_status)
+ VALUES ($1, $2, $3, $4, $5)""")
- line_number = 0
entries = []
- for line in file(my_config['path']):
- line_number += 1
+ f = open(my_config['path'])
+ pkgs = yaml.load(f)
+ for e in pkgs:
+ if not 'status' in e:
+ ustat = 'error'
+ elif e['status'] == 'up to date':
+ ustat = 'uptodate'
+ elif e['status'] == 'Newer version available':
+ ustat = 'outdated'
+ else:
+ ustat = 'newer-in-debian'
- try:
- src, uu, eu, uv, ev, upv, epv, u_utd, e_utd, uf, ef, udate, edate = line.rstrip().split('|')
- except ValueError:
- print "Error reading "+line
- continue
- if udate == "":
- udate = None
- if edate == "":
- edate = None
- ustat = 'error' if uf == 't' else ('uptodate' if u_utd == 't' else ('outdated' if u_utd == 'f' else None))
- estat = 'error' if ef == 't' else ('uptodate' if e_utd == 't' else ('outdated' if e_utd == 'f' else None))
- entries.append((src, uv, uu, upv, ustat, udate, ev, eu, epv, estat, edate))
+ # add empty fields if missing
+ for k in ('debian-uversion', 'upstream-version', 'debian-mangled-uversion'):
+ if not k in e:
+ e[k] = ''
- cur.executemany("EXECUTE dehs_insert (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", entries)
+ entries.append((e['package'], e['debian-uversion'], e['upstream-version'], e['debian-mangled-uversion'], ustat))
+
+ cur.executemany("EXECUTE dehs_insert (%s, %s, %s, %s, %s)", entries)
cur.execute("DEALLOCATE dehs_insert")
cur.execute("ANALYZE dehs")
More information about the Collab-qa-commits
mailing list