harvest-dev team mailing list archive
-
harvest-dev team
-
Mailing list archive
-
Message #00310
[Merge] lp:~dholbach/harvest/627998 into lp:harvest
Daniel Holbach has proposed merging lp:~dholbach/harvest/627998 into lp:harvest.
Requested reviews:
harvest-dev (harvest-dev)
Related bugs:
#627998 Use anonymous Launchpad login
https://bugs.launchpad.net/bugs/627998
--
https://code.launchpad.net/~dholbach/harvest/627998/+merge/34282
Your team harvest-dev is requested to review the proposed merge of lp:~dholbach/harvest/627998 into lp:harvest.
=== modified file 'harvest/common/launchpad.py'
--- harvest/common/launchpad.py 2010-06-02 14:12:23 +0000
+++ harvest/common/launchpad.py 2010-09-01 14:48:08 +0000
@@ -1,6 +1,4 @@
from launchpadlib.launchpad import Launchpad, EDGE_SERVICE_ROOT
-from launchpadlib.credentials import Credentials
-from launchpadlib.errors import HTTPError
from django.conf import settings
@@ -9,31 +7,19 @@
def lp_login(lp_instance=EDGE_SERVICE_ROOT):
"""
Return a logged in Launchpad object.
-
- XXX: Once https://bugs.launchpad.net/soyuz/+bug/510180 is fixed we can
- probably use "anonymous login" everywhere.
"""
+
cachedir = os.path.join(settings.PROJECT_PATH, 'lp_data/cache')
- creddir = os.path.join(settings.PROJECT_PATH, 'lp_data/lp_credentials')
- project = settings.PROJECT_NAME.strip()
- if not os.path.isdir(creddir):
- os.makedirs(creddir)
- cred = os.path.join(creddir, '%s.credentials' % project)
-
- if os.path.exists(cred):
- credentials = Credentials()
- credentials.load(open(cred))
- launchpad = Launchpad(credentials, lp_instance, cachedir)
- else:
+ client_ident = getattr(settings, 'LP_PROJECT_NAME', "Harvest")
+ try:
+ launchpad = Launchpad.login_anonymously(client_ident, lp_instance, cachedir)
+ except:
try:
- launchpad = Launchpad.get_token_and_login(project, lp_instance,
- cachedir)
- except HTTPError as e:
- raise 'Error connecting to Launchpad: %s' % str(e.value)
- f = open(cred, 'w')
- os.chmod(cred, 0600)
- launchpad.credentials.save(f)
- f.close()
+ # Support for launchpadlib pre 1.5.4.
+ launchpad = Launchpad.login(client_ident, "", "", lp_instance, cachedir)
+ except:
+ # Launchpad might be offline.
+ return None
return launchpad
def get_packagesets(lp):
=== modified file 'harvest/opportunities/management/commands/updatepackagesets.py'
--- harvest/opportunities/management/commands/updatepackagesets.py 2010-05-31 15:44:43 +0000
+++ harvest/opportunities/management/commands/updatepackagesets.py 2010-09-01 14:48:08 +0000
@@ -42,10 +42,10 @@
# 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)
+ package.packagesets.remove(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.packagesets.remove(PackageSet.objects.get(name=packageset))
package.save()
unseeded_packages = SourcePackage.objects.filter(packagesets__isnull=True)
for u in unseeded_packages: