From 91f05745ac66176176a3bd05afb8e642b3d9e9c1 Mon Sep 17 00:00:00 2001 From: "Antoine R. Dumont (@ardumont)" <antoine.romain.dumont@gmail.com> Date: Wed, 18 Jul 2018 11:52:50 +0200 Subject: [PATCH] core/lister: Make the listers' scheduler configuration adaptable Related T1138 --- debian/control | 4 ++-- requirements-swh.txt | 2 +- swh/lister/core/lister_base.py | 12 ++++++++---- swh/lister/core/tests/test_lister.py | 9 +++------ 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/debian/control b/debian/control index ab4b458b..6b27958b 100644 --- a/debian/control +++ b/debian/control @@ -12,7 +12,7 @@ Build-Depends: debhelper (>= 9), python3-setuptools, python3-sqlalchemy (>= 1.0), python3-swh.core, - python3-swh.scheduler (>= 0.0.14~), + python3-swh.scheduler (>= 0.0.30~), python3-swh.storage, python3-swh.storage.schemata, python3-testing.postgresql, @@ -23,7 +23,7 @@ Homepage: https://forge.softwareheritage.org/source/swh-lister/ Package: python3-swh.lister Architecture: all -Depends: python3-swh.scheduler (>= 0.0.14~), +Depends: python3-swh.scheduler (>= 0.0.30~), ${misc:Depends}, ${python3:Depends} Breaks: python3-swh.lister.github diff --git a/requirements-swh.txt b/requirements-swh.txt index c08589da..e4f6ba11 100644 --- a/requirements-swh.txt +++ b/requirements-swh.txt @@ -1,3 +1,3 @@ swh.core swh.storage[schemata] >= 0.0.76 -swh.scheduler >= 0.0.14 +swh.scheduler >= 0.0.30 diff --git a/swh/lister/core/lister_base.py b/swh/lister/core/lister_base.py index 6b789f65..5b371596 100644 --- a/swh/lister/core/lister_base.py +++ b/swh/lister/core/lister_base.py @@ -15,6 +15,7 @@ from sqlalchemy.orm import sessionmaker from swh.core import config from swh.scheduler.backend import SchedulerBackend +from swh.scheduler import get_scheduler from swh.storage import get_storage from .abstractattribute import AbstractAttribute @@ -214,7 +215,12 @@ class SWHListerBase(abc.ABC, config.SWHConfig): 'url': 'http://localhost:5002/' }, }), - 'scheduling_db': ('str', 'dbname=softwareheritage-scheduler-dev'), + 'scheduler': ('dict', { + 'cls': 'remote', + 'args': { + 'url': 'http://localhost:5008/' + }, + }) } @property @@ -252,9 +258,7 @@ class SWHListerBase(abc.ABC, config.SWHConfig): self.config.update(override_config) self.storage = get_storage(**self.config['storage']) - self.scheduler = SchedulerBackend( - scheduling_db=self.config['scheduling_db'], - ) + self.scheduler = get_scheduler(**self.config['scheduler']) self.db_engine = create_engine(self.config['lister_db_url']) self.mk_session = sessionmaker(bind=self.db_engine) self.db_session = self.mk_session() diff --git a/swh/lister/core/tests/test_lister.py b/swh/lister/core/tests/test_lister.py index d20ecd01..b2e28cd7 100644 --- a/swh/lister/core/tests/test_lister.py +++ b/swh/lister/core/tests/test_lister.py @@ -106,12 +106,9 @@ class HttpListerTesterBase(abc.ABC): """ if override_config or self.fl is None: - with patch( - 'swh.scheduler.backend.SchedulerBackend.reconnect', noop - ): - self.fl = self.Lister(api_baseurl='https://fakeurl', - override_config=override_config) - self.fl.INITIAL_BACKOFF = 1 + self.fl = self.Lister(api_baseurl='https://fakeurl', + override_config=override_config) + self.fl.INITIAL_BACKOFF = 1 self.fl.reset_backoff() return self.fl -- GitLab