diff options
Diffstat (limited to 'feed/sse_tar.py')
-rwxr-xr-x | feed/sse_tar.py | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/feed/sse_tar.py b/feed/sse_tar.py index bf3cb8e..45700f9 100755 --- a/feed/sse_tar.py +++ b/feed/sse_tar.py @@ -115,12 +115,11 @@ def rm_rf(root): def process_archive(archive, meta = {}, recid = None, provider_id = SSE_PROVIDER_NONE): if recid is None: - recid = archive + recid = os.path.basename(archive) - md = calc_md(archive) - meta["md"] = md - - root = os.path.join(HOME, "sources", md) + if not meta.has_key("md"): + md = calc_md(archive) + meta["md"] = md sse_db.start_transaction() @@ -128,19 +127,19 @@ def process_archive(archive, meta = {}, recid = None, provider_id = SSE_PROVIDER package_id = sse_db.find_package(md) if not package_id is None: + print "Package '%s' already in database." % recid - if not recid is None: - # Update provider record - sse_db.new_provider_record(recid, package_id, provider_id, meta) + # Update provider record + sse_db.new_provider_record(recid, package_id, provider_id, meta) else: + root = os.path.join(HOME, "sources", md) + package_id = sse_db.new_package(archive, root, meta) print "Package '%s' is new in database." % recid - - if not recid is None: - sse_db.new_provider_record(recid, package_id, provider_id, meta) + sse_db.new_provider_record(recid, package_id, provider_id, meta) try: rm_rf(root) |