Example #1
0
def job_post_save(sender, **kwargs):
    instance = kwargs['instance']
    instance.set_status(status=JobLifeCycle.CREATED)

    # Clean outputs and logs
    delete_job_logs(instance.unique_name)
    delete_job_outputs(instance.unique_name)
 def test_build_job_logs_path_creation_deletion(self):
     job = BuildJobFactory()
     job_logs_path = get_job_logs_path(job.unique_name)
     create_job_logs_path(job.unique_name)
     open(job_logs_path, '+w')
     # Should be true, created by the signal
     assert os.path.exists(job_logs_path) is True
     delete_job_logs(job.unique_name)
     assert os.path.exists(job_logs_path) is False
Example #3
0
def build_job_pre_delete(sender, **kwargs):
    job = kwargs['instance']

    # Delete outputs and logs
    delete_job_logs(job.unique_name)

    if not job.is_running:
        return

    celery_app.send_task(SchedulerCeleryTasks.BUILD_JOBS_STOP,
                         kwargs={
                             'project_name': job.project.unique_name,
                             'project_uuid': job.project.uuid.hex,
                             'build_job_name': job.unique_name,
                             'build_job_uuid': job.uuid.hex,
                             'update_status': False
                         })
Example #4
0
def job_pre_delete(sender, **kwargs):
    job = kwargs['instance']

    # Delete outputs and logs
    delete_job_outputs(persistence_outputs=job.persistence_outputs, job_name=job.unique_name)
    delete_job_logs(job.unique_name)

    if not job.is_running:
        return

    celery_app.send_task(
        SchedulerCeleryTasks.JOBS_STOP,
        kwargs={
            'project_name': job.project.unique_name,
            'project_uuid': job.project.uuid.hex,
            'job_name': job.unique_name,
            'job_uuid': job.uuid.hex,
            'update_status': False,
            'collect_logs': False,
        })