in src/lambdas/custodian_job_updater/handler.py [0:0]
def update_standard(self, detail: StateChangeEventDetail,
environment: dict[str, str]):
_LOG.info('Updating a standard job')
job_id = environment.get(BatchJobEnv.CUSTODIAN_JOB_ID.value)
updater = JobUpdater.from_job_id(job_id)
updater.status = detail['status']
if not updater.job.created_at and detail.get('createdAt'):
updater.created_at = self.timestamp_to_iso(detail['createdAt'])
if not updater.job.started_at and detail.get('startedAt'):
updater.started_at = self.timestamp_to_iso(detail['startedAt'])
if not updater.job.stopped_at and detail.get('stoppedAt'):
updater.stopped_at = self.timestamp_to_iso(detail['stoppedAt'])
if not updater.job.queue:
updater.queue = detail['jobQueue']
if not updater.job.definition:
updater.definition = detail['jobDefinition']
updater.update()
if detail['status'] in (JobState.FAILED, JobState.SUCCEEDED):
self._delete_temporary_credentials(environment)
if detail.get('stoppedAt') and self.is_licensed_job(environment):
job = updater.job
self.license_manager_service.cl.update_job(
job_id=job.id,
customer=job.customer_name,
created_at=job.created_at,
stopped_at=job.stopped_at,
started_at=job.started_at,
status=job.status
)
_LOG.info('Processing has finished')