3131
3232from django .core .exceptions import ObjectDoesNotExist
3333from django .db import IntegrityError , transaction , connection
34+ from grimoirelab_toolkit .datetime import datetime_utcnow
3435from rq .job import Job
3536
3637from .db import find_individual_by_uuid , find_organization
@@ -136,7 +137,7 @@ def job_in_tenant(job, tenant):
136137 jobs = (queue .jobs + started_jobs + deferred_jobs + finished_jobs + failed_jobs + scheduled_jobs )
137138 jobs = (job for job in jobs if job_in_tenant (job , tenant ))
138139
139- sorted_jobs = sorted (jobs , key = lambda x : x .enqueued_at if x .enqueued_at else datetime . datetime . utcnow (), reverse = True )
140+ sorted_jobs = sorted (jobs , key = lambda x : x .enqueued_at if x .enqueued_at else datetime_utcnow (), reverse = True )
140141
141142 logger .debug (f"List of jobs retrieved; total jobs: { len (sorted_jobs )} ;" )
142143
@@ -881,7 +882,7 @@ def schedule_task(ctx, fn, task, scheduled_datetime=None, **kwargs):
881882 """Schedule a task at a specific time and return the job created"""
882883
883884 if not scheduled_datetime :
884- scheduled_datetime = datetime . datetime . now ( datetime . timezone . utc )
885+ scheduled_datetime = datetime_utcnow ( )
885886
886887 job = get_tenant_queue (ctx .tenant ).enqueue_at (datetime = scheduled_datetime ,
887888 f = fn ,
@@ -942,7 +943,7 @@ def on_success_job(job, connection, result, *args, **kwargs):
942943 logger .error ("ScheduledTask not found. Not rescheduling." )
943944 return
944945
945- task .last_execution = datetime . datetime . now ( datetime . timezone . utc )
946+ task .last_execution = datetime_utcnow ( )
946947 task .executions = task .executions + 1
947948 task .failed = False
948949
@@ -958,7 +959,7 @@ def on_success_job(job, connection, result, *args, **kwargs):
958959 task .scheduled_datetime = None
959960 task .job_id = None
960961 else :
961- scheduled_datetime = datetime . datetime . now ( datetime . timezone . utc ) + datetime .timedelta (minutes = task .interval )
962+ scheduled_datetime = datetime_utcnow ( ) + datetime .timedelta (minutes = task .interval )
962963 ctx = job .kwargs .pop ('ctx' )
963964 schedule_task (ctx , job .func , task , scheduled_datetime = scheduled_datetime , ** job .kwargs )
964965
@@ -979,7 +980,7 @@ def on_failed_job(job, connection, result, *args, **kwargs):
979980 logger .error ("ScheduledTask not found. Not rescheduling." )
980981 return
981982
982- task .last_execution = datetime . datetime . now ( datetime . timezone . utc )
983+ task .last_execution = datetime_utcnow ( )
983984 task .executions = task .executions + 1
984985 task .failures = task .failures + 1
985986 task .failed = True
@@ -989,7 +990,7 @@ def on_failed_job(job, connection, result, *args, **kwargs):
989990 task .scheduled_datetime = None
990991 task .job_id = None
991992 else :
992- scheduled_datetime = datetime . datetime . now ( datetime . timezone . utc ) + datetime .timedelta (minutes = task .interval )
993+ scheduled_datetime = datetime_utcnow ( ) + datetime .timedelta (minutes = task .interval )
993994 ctx = job .kwargs .pop ('ctx' )
994995 schedule_task (ctx , job .func , task , scheduled_datetime = scheduled_datetime , ** job .kwargs )
995996 logger .info (f"Reschedule task ID '{ task .id } ' at '{ scheduled_datetime } '." )
0 commit comments