From 2b2b1222d6852e79378735b857e2a83a7af1cb9c Mon Sep 17 00:00:00 2001 From: Pablo Manuel Castelo Vigo Date: Mon, 13 Nov 2023 16:30:41 +0100 Subject: [PATCH 1/6] Update runner.py to work with multiDB & list_db = False As https://github.com/OCA/queue/pull/416/commits/27604ec3ad77bb0b9cc43859bad5b74820145900 --- queue_job/jobrunner/runner.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/queue_job/jobrunner/runner.py b/queue_job/jobrunner/runner.py index 2314510731..4a574a68da 100644 --- a/queue_job/jobrunner/runner.py +++ b/queue_job/jobrunner/runner.py @@ -39,6 +39,7 @@ or ``False`` if unset. - ``ODOO_QUEUE_JOB_JOBRUNNER_DB_PASSWORD=passdb``, default ``db_password`` or ``False`` if unset. + - ``ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME=firstdb,seconddb``, default ``db_name`` * Alternatively, configure the channels through the Odoo configuration file, like: @@ -54,6 +55,7 @@ http_auth_password = s3cr3t jobrunner_db_host = master-db jobrunner_db_port = 5432 + jobrunner_db_name = firstdb,seconddb jobrunner_db_user = userdb jobrunner_db_password = passdb @@ -398,7 +400,11 @@ def from_environ_or_config(cls): return runner def get_db_names(self): - if config["db_name"]: + if os.environ.get("ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"): + db_names = os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"].split(",") + elif queue_job_config.get("jobrunner_db_name"): + db_names = queue_job_config["jobrunner_db_name"].split(",") + elif config["db_name"]: db_names = config["db_name"].split(",") else: db_names = odoo.service.db.exp_list(True) From a219977a1b25542dd9937e4dabef69fb0e519c50 Mon Sep 17 00:00:00 2001 From: Pablo Manuel Castelo Vigo Date: Mon, 13 Nov 2023 16:56:53 +0100 Subject: [PATCH 2/6] Update __manifest__.py --- queue_job/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/queue_job/__manifest__.py b/queue_job/__manifest__.py index 5ee029c804..a5773a3c0c 100644 --- a/queue_job/__manifest__.py +++ b/queue_job/__manifest__.py @@ -2,7 +2,7 @@ { "name": "Job Queue", - "version": "15.0.2.3.0", + "version": "15.0.2.3.1", "author": "Camptocamp,ACSONE SA/NV,Odoo Community Association (OCA)", "website": "https://github.com/OCA/queue", "license": "LGPL-3", From d5fc85433103fb932333efa7334a447fc6f669d6 Mon Sep 17 00:00:00 2001 From: pcastelovigo Date: Mon, 20 Nov 2023 10:34:07 +0100 Subject: [PATCH 3/6] unit test for codecov --- queue_job/tests/test_db_names.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 queue_job/tests/test_db_names.py diff --git a/queue_job/tests/test_db_names.py b/queue_job/tests/test_db_names.py new file mode 100644 index 0000000000..32d6a81a01 --- /dev/null +++ b/queue_job/tests/test_db_names.py @@ -0,0 +1,18 @@ +from odoo.tests.common import TransactionCase +from odoo.tools import config + +class TestGetDbNames(TransactionCase): + + def test_get_db_names(self): + os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = "db1,db2" + config["db_name"] = False + queue_job_config = {"jobrunner_db_name": "db3,db4"} + + db_names = self.env["queue.job"].get_db_names() + self.assertEqual(db_names, ["db1", "db2"]) + + os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = False + + db_names = self.env["queue.job"].get_db_names() + self.assertEqual(db_names, ["db3", "db4"]) + From 58c5907949be3fc19d05cdd0fe754c0316f5a2f3 Mon Sep 17 00:00:00 2001 From: pcastelovigo Date: Mon, 20 Nov 2023 10:36:12 +0100 Subject: [PATCH 4/6] unit test for codecov --- queue_job/tests/test_db_names.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/queue_job/tests/test_db_names.py b/queue_job/tests/test_db_names.py index 32d6a81a01..7d8cf490d2 100644 --- a/queue_job/tests/test_db_names.py +++ b/queue_job/tests/test_db_names.py @@ -10,9 +10,3 @@ def test_get_db_names(self): db_names = self.env["queue.job"].get_db_names() self.assertEqual(db_names, ["db1", "db2"]) - - os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = False - - db_names = self.env["queue.job"].get_db_names() - self.assertEqual(db_names, ["db3", "db4"]) - From 45918652aac9ca6b37a91eabb4740b328322a2cd Mon Sep 17 00:00:00 2001 From: pcastelovigo Date: Mon, 20 Nov 2023 10:44:03 +0100 Subject: [PATCH 5/6] unit test for codecov --- queue_job/tests/test_db_names.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/queue_job/tests/test_db_names.py b/queue_job/tests/test_db_names.py index 7d8cf490d2..0fe80f0c5e 100644 --- a/queue_job/tests/test_db_names.py +++ b/queue_job/tests/test_db_names.py @@ -1,3 +1,4 @@ +import os from odoo.tests.common import TransactionCase from odoo.tools import config @@ -10,3 +11,7 @@ def test_get_db_names(self): db_names = self.env["queue.job"].get_db_names() self.assertEqual(db_names, ["db1", "db2"]) + + os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = False + db_names = self.env["queue.job"].get_db_names() + self.assertEqual(db_names, ["db3", "db4"]) From 02f55e012f3bd473b2c2a1b339a44043e9fca400 Mon Sep 17 00:00:00 2001 From: pcastelovigo Date: Mon, 20 Nov 2023 10:53:24 +0100 Subject: [PATCH 6/6] unit test for codecov --- queue_job/tests/test_db_names.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/queue_job/tests/test_db_names.py b/queue_job/tests/test_db_names.py index 0fe80f0c5e..7116ee6906 100644 --- a/queue_job/tests/test_db_names.py +++ b/queue_job/tests/test_db_names.py @@ -7,11 +7,7 @@ class TestGetDbNames(TransactionCase): def test_get_db_names(self): os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = "db1,db2" config["db_name"] = False - queue_job_config = {"jobrunner_db_name": "db3,db4"} db_names = self.env["queue.job"].get_db_names() self.assertEqual(db_names, ["db1", "db2"]) - os.environ["ODOO_QUEUE_JOB_JOBRUNNER_DB_NAME"] = False - db_names = self.env["queue.job"].get_db_names() - self.assertEqual(db_names, ["db3", "db4"])