Skip to content

Commit

Permalink
Feat(mtd) add celery task
Browse files Browse the repository at this point in the history
  • Loading branch information
Pierre-Narcisi committed Jan 13, 2025
1 parent e2bb9b7 commit fa6bfc0
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 1 deletion.
34 changes: 34 additions & 0 deletions backend/geonature/core/gn_meta/mtd/task.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
from celery.schedules import crontab
from celery.utils.log import get_task_logger

from geonature.core.gn_commons.repositories import TMediumRepository
from geonature.core.gn_meta.mtd import sync_af_and_ds
from geonature.utils.celery import celery_app
from geonature.utils.config import config

logger = get_task_logger(__name__)


@celery_app.on_after_finalize.connect
def setup_periodic_tasks(sender, **kwargs):
ct = config["MTD_SYNC_CRONTAB"]
if ct:
minute, hour, day_of_month, month_of_year, day_of_week = ct.split(" ")
sender.add_periodic_task(
crontab(
minute=minute,
hour=hour,
day_of_week=day_of_week,
day_of_month=day_of_month,
month_of_year=month_of_year,
),
start_mtd_sync.s(),
name="mtd sync",
)


@celery_app.task(bind=True)
def start_mtd_sync(self):
logger.info("syncing mtd ...")
sync_af_and_ds()
logger.info("Mtd synced")
1 change: 0 additions & 1 deletion backend/geonature/core/gn_meta/routes.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@

if config["CAS_PUBLIC"]["CAS_AUTHENTIFICATION"]:

@routes.before_request
def synchronize_mtd():
# TODO: add `if request.method != "OPTIONS" and [...]` in the following condition
if request.endpoint in ["gn_meta.get_datasets", "gn_meta.get_acquisition_frameworks_list"]:
Expand Down
1 change: 1 addition & 0 deletions backend/geonature/utils/config_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -572,6 +572,7 @@ class GnGeneralSchemaConf(Schema):
MEDIA_URL = fields.String(load_default="/media")
METADATA = fields.Nested(MetadataConfig, load_default=MetadataConfig().load({}))
MTD = fields.Nested(MTDSchemaConf, load_default=MTDSchemaConf().load({}))
MTD_SYNC_CRONTAB = fields.String(load_default="0 1 * * *")
NB_MAX_DATA_SENSITIVITY_REPORT = fields.Integer(load_default=1000000)
ADDITIONAL_FIELDS = fields.Nested(AdditionalFields, load_default=AdditionalFields().load({}))
PUBLIC_ACCESS_USERNAME = fields.String(load_default="")
Expand Down

0 comments on commit fa6bfc0

Please sign in to comment.