harvest-dev team mailing list archive
-
harvest-dev team
-
Mailing list archive
-
Message #00152
[Merge] lp:~dholbach/harvest/581600 into lp:harvest
Daniel Holbach has proposed merging lp:~dholbach/harvest/581600 into lp:harvest.
Requested reviews:
harvest-dev (harvest-dev)
Related bugs:
#581600 Show unseeded "packageset"
https://bugs.launchpad.net/bugs/581600
--
https://code.launchpad.net/~dholbach/harvest/581600/+merge/26434
Your team harvest-dev is requested to review the proposed merge of lp:~dholbach/harvest/581600 into lp:harvest.
=== modified file 'harvest/opportunities/management/commands/updatepackagesets.py'
--- harvest/opportunities/management/commands/updatepackagesets.py 2010-01-22 13:28:04 +0000
+++ harvest/opportunities/management/commands/updatepackagesets.py 2010-05-31 15:46:30 +0000
@@ -16,10 +16,14 @@
sys.exit(1)
lp_packagesets = launchpad.get_packagesets(lp)
package_mapping = {}
+ unseeded, created = PackageSet.objects.get_or_create(name="unseeded")
+ if created:
+ unseeded.save()
for lp_packageset in lp_packagesets:
packageset, created = PackageSet.objects.get_or_create(name=lp_packageset.name)
if created:
packageset.save()
+ # record information which package is in which package sets
for package_name in lp_packageset.getSourcesIncluded():
if not package_mapping.has_key(package_name):
package_mapping[package_name] = set()
@@ -35,7 +39,15 @@
package.packagesets.get(name=packageset_name)
except PackageSet.DoesNotExist:
package.packagesets.add(PackageSet.objects.get(name=packageset_name))
+ # if package is in mapping, it can't be in the unseeded
+ # list any more
+ if package.packagesets.filter(name="unseeded"):
+ package.packagesets.delete(unseeded)
for packageset in package.packagesets.all():
if packageset.name not in package_mapping[package_name]:
package.packagesets.delete(PackageSet.objects.get(name=packageset))
package.save()
+ unseeded_packages = SourcePackage.objects.filter(packagesets__isnull=True)
+ for u in unseeded_packages:
+ u.packagesets.add(unseeded)
+ u.save()