diff --git a/swh/lister/phabricator/lister.py b/swh/lister/phabricator/lister.py --- a/swh/lister/phabricator/lister.py +++ b/swh/lister/phabricator/lister.py @@ -16,19 +16,16 @@ class PhabricatorLister(IndexingHttpLister): PATH_TEMPLATE = '?order=oldest&attachments[uris]=1&after=%s' + DEFAULT_URL = 'https://forge.softwareheritage.org/api/diffusion.repository.search' # noqa MODEL = PhabricatorModel LISTER_NAME = 'phabricator' - def __init__(self, forge_url, instance=None, override_config=None): - if forge_url.endswith("/"): - forge_url = forge_url[:-1] - self.forge_url = forge_url - api_baseurl = '%s/api/diffusion.repository.search' % forge_url - if not instance: - instance = urllib.parse.urlparse(forge_url).hostname - self.instance = instance + def __init__(self, api_baseurl=None, instance=None, override_config=None): super().__init__(api_baseurl=api_baseurl, override_config=override_config) + if not instance: + instance = urllib.parse.urlparse(self.api_baseurl).hostname + self.instance = instance @property def default_min_bound(self): @@ -72,7 +69,7 @@ if url is None: return None return { - 'uid': self.forge_url + str(repo['id']), + 'uid': url, 'indexable': repo['id'], 'name': repo['fields']['shortName'], 'full_name': repo['fields']['name'], diff --git a/swh/lister/phabricator/tests/test_lister.py b/swh/lister/phabricator/tests/test_lister.py --- a/swh/lister/phabricator/tests/test_lister.py +++ b/swh/lister/phabricator/tests/test_lister.py @@ -34,7 +34,7 @@ override_config = dict(credentials=credentials, **(override_config or {})) self.fl = self.Lister( - forge_url='https://fakeurl', instance='fake', + api_baseurl='https://fakeurl', instance='fake', override_config=override_config) self.fl.INITIAL_BACKOFF = 1 diff --git a/swh/lister/tests/test_cli.py b/swh/lister/tests/test_cli.py --- a/swh/lister/tests/test_cli.py +++ b/swh/lister/tests/test_cli.py @@ -60,7 +60,9 @@ listers = { 'gitlab': ('api_baseurl', 'https://gitlab.uni/api/v4/'), - 'phabricator': ('forge_url', 'https://somewhere.org'), + 'phabricator': ( + 'api_baseurl', + 'https://somewhere.org/api/diffusion.repository.search'), } # check the override ends up defined in the lister