draft: Add an optional REST Controller for Celery
This adds a Flask-based remote control for Celery as an extra bootstep
that is enabled by the Celery consumer blueprint (when the Celery worker
is started), when the rest_controller
flag is enabled in the Celery
config.
This remote-control enables the same operations as the celery inspect
and celery control
protocols, as GET and POST endpoints respectively.
TODO:
-
Improve thread management / exception passing (the Celery "shutdown" remote control just raises an exception, and waitress as WSGI server eats all exceptions; We could probably have a single WSGI thread, instead of a pair of WSGI "control" and WSGI "serving") -
basic unit testing
Merge request reports
Activity
assigned to @olasd
Jenkins job DSCH/gitlab-builds #162 failed .
See Console Output and Coverage Report for more details.Jenkins job DSCH/gitlab-builds #163 succeeded .
See Console Output and Coverage Report for more details.mentioned in issue swh/infra/sysadm-environment#4839
mentioned in issue swh/infra/sysadm-environment#5023
added 60 commits
-
75327347...e3d9963e - 58 commits from branch
swh/devel:master
- deaebf01 - celery_backend: set yaml Celery config at the proper level
- cf9a108f - Add an optional REST Controller for Celery
-
75327347...e3d9963e - 58 commits from branch
Jenkins job DSCH/gitlab-builds #311 failed in 4 min 20 sec.
See Console Output, Blue Ocean and Coverage Report for more details.