~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/plugins/launchpad/lp_api.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2011-02-03 02:22:57 UTC
  • mfrom: (5639.1.2 doc-lint-2.4)
  • Revision ID: pqm@pqm.ubuntu.com-20110203022257-caoghu6higq98tak
(spiv) Link to What's New in 2.4 (rather than 2.3) in doc index,
 and add missing comma in doc. (Andrew Bennetts)

Show diffs side-by-side

added added

removed removed

Lines of Context:
47
47
    STAGING_SERVICE_ROOT,
48
48
    Launchpad,
49
49
    )
 
50
try:
 
51
    from launchpadlib import uris
 
52
except ImportError:
 
53
    # Create a minimal object so the getattr() calls below fail gently and
 
54
    # provide default values
 
55
    uris = object()
50
56
 
 
57
LPNET_SERVICE_ROOT = getattr(uris, 'LPNET_SERVICE_ROOT',
 
58
                             'https://api.launchpad.net/beta/')
 
59
QASTAGING_SERVICE_ROOT = getattr(uris, 'QASTAGING_SERVICE_ROOT',
 
60
                                 'https://api.qastaging.launchpad.net/')
51
61
 
52
62
# Declare the minimum version of launchpadlib that we need in order to work.
53
63
# 1.5.1 is the version of launchpadlib packaged in Ubuntu 9.10, the most
74
84
            installed_version, installed_version)
75
85
 
76
86
 
77
 
# The older versions of launchpadlib only provided service root constants for
78
 
# edge and staging, whilst newer versions drop edge. Therefore service root
79
 
# URIs for which we do not always have constants are derived from the staging
80
 
# one, which does always exist.
81
 
#
82
 
# It is necessary to derive, rather than use hardcoded URIs because
83
 
# launchpadlib <= 1.5.4 requires service root URIs that end in a path of
84
 
# /beta/, whilst launchpadlib >= 1.5.5 requires service root URIs with no path
85
 
# info.
86
 
#
87
 
# Once we have a hard dependency on launchpadlib >= 1.5.4 we can replace all of
88
 
# bzr's local knowledge of individual Launchpad instances with use of the
89
 
# launchpadlib.uris module.
90
87
LAUNCHPAD_API_URLS = {
91
 
    'production': STAGING_SERVICE_ROOT.replace('api.staging.launchpad.net',
92
 
        'api.launchpad.net'),
93
 
    'qastaging': STAGING_SERVICE_ROOT.replace('api.staging.launchpad.net',
94
 
        'api.qastaging.launchpad.net'),
 
88
    'production': LPNET_SERVICE_ROOT,
 
89
    'qastaging': QASTAGING_SERVICE_ROOT,
95
90
    'staging': STAGING_SERVICE_ROOT,
96
 
    'dev': STAGING_SERVICE_ROOT.replace('api.staging.launchpad.net',
97
 
        'api.launchpad.dev'),
 
91
    'dev': 'https://api.launchpad.dev/beta/',
98
92
    }
99
93
 
100
94
 
205
199
        if str(launchpad._root_uri) == STAGING_SERVICE_ROOT:
206
200
            return url.replace('bazaar.launchpad.net',
207
201
                               'bazaar.staging.launchpad.net')
208
 
        elif str(launchpad._root_uri) == LAUNCHPAD_API_URLS['qastaging']:
 
202
        elif str(launchpad._root_uri) == QASTAGING_SERVICE_ROOT:
209
203
            return url.replace('bazaar.launchpad.net',
210
204
                               'bazaar.qastaging.launchpad.net')
211
205
        return url