diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55361ce9cf73c8dd8e7b4698ad944427ccfaf571..d89455b164d8ab29f8e21dd43faa6c96aa406183 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,10 +18,10 @@ check:test: - python manage.py test deploy:dev: - image: registry.blitzhub.io/docker - stage: deploy only: - development + image: registry.blitzhub.io/docker + stage: deploy services: - name: registry.blitzhub.io/docker:dind alias: docker @@ -37,11 +37,11 @@ deploy:dev: - check:lint - check:test -deploy:prod: - image: registry.blitzhub.io/docker - stage: deploy +deploy:prod: only: - production + image: registry.blitzhub.io/docker + stage: deploy when: manual services: - name: registry.blitzhub.io/docker:dind diff --git a/docker-compose.yml b/docker-compose.yml index 6221aafcc64e7ef6d062f27fbd373f49adad24b3..c40e05c12fd9c38cef0cfcf64538f84ce7bca33b 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -46,6 +46,23 @@ services: networks: - redis_net + celery: + restart: always + build: ./backend + command: celery -A core worker -l info + volumes: + - ./backend/:/usr/src/app/ + depends_on: + - redis + + celery-beat: + build: ./backend + command: celery -A core beat -l info + volumes: + - ./backend/:/usr/src/app/ + depends_on: + - redis + networks: db_net: redis_net: diff --git a/netex/settings.py b/netex/settings.py index c8895ef0ed26cbec119bd3d7001a3829fb21840e..b232a9bb3101f77cbe8a7b988e4080cc805e5c20 100755 --- a/netex/settings.py +++ b/netex/settings.py @@ -12,6 +12,9 @@ https://docs.djangoproject.com/en/3.0/ref/settings/ import os +# celery beat +from celery.schedules import crontab + # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) @@ -169,3 +172,13 @@ CACHES = { } } } + +CELERY_BROKER_URL = "redis://redis:6379" +CELERY_RESULT_BACKEND = "redis://redis:6379" + +CELERY_BEAT_SCHEDULE = { + "update_db": { + "task": "control.celery_tasks.task_update_db_from_nedrex", + "schedule": crontab(hour=12, minute=15, day_of_week='sun'), + } +} diff --git a/requirements.txt b/requirements.txt index 34ff3b679d5c7395c8e9d754895d1f753387cb5c..6ea24adea7731f08bf8305c34f98f8793dd9bad6 100755 --- a/requirements.txt +++ b/requirements.txt @@ -28,4 +28,5 @@ rq==1.3.0 six==1.15.0 sqlparse==0.3.1 urllib3==1.25.10 -sqlalchemy==1.3.23 \ No newline at end of file +sqlalchemy==1.3.23 +celery==5.2.6 \ No newline at end of file