def project_pre_delete(sender, **kwargs): instance = kwargs['instance'] # Clean outputs, logs, and repos delete_project_outputs(persistence_outputs=None, project_name=instance.unique_name) delete_project_logs(instance.unique_name) delete_project_repos(instance.unique_name)
def project_pre_delete(sender, **kwargs): instance = kwargs['instance'] # Clean repos delete_project_repos(instance.unique_name) # Clean outputs and logs celery_app.send_task(SchedulerCeleryTasks.STORES_SCHEDULE_OUTPUTS_DELETION, kwargs={ 'persistence': instance.persistence_outputs, 'subpath': instance.subpath, }) celery_app.send_task(SchedulerCeleryTasks.STORES_SCHEDULE_LOGS_DELETION, kwargs={ 'persistence': instance.persistence_logs, 'subpath': instance.subpath, })
def test_project_logs_path_creation_deletion(self): with patch('scheduler.tasks.experiments.experiments_build.apply_async' ) as _: # noqa experiment = ExperimentFactory(user=self.project.user, project=self.project) experiment_logs_path = stores.get_experiment_logs_path( experiment_name=experiment.unique_name, temp=False) stores.create_experiment_logs_path( experiment_name=experiment.unique_name, temp=False) open(experiment_logs_path, '+w') project_logs_path = stores.get_project_logs_path( project_name=self.project.unique_name) project_repos_path = get_project_repos_path(self.project.unique_name) # Should be true, created by the signal assert os.path.exists(experiment_logs_path) is True assert os.path.exists(project_logs_path) is True assert os.path.exists(project_repos_path) is True stores_schedule_logs_deletion(persistence=None, subpath=self.project.subpath) delete_project_repos(self.project.unique_name) assert os.path.exists(experiment_logs_path) is False assert os.path.exists(project_logs_path) is False assert os.path.exists(project_repos_path) is False
def project_post_save(sender, **kwargs): instance = kwargs['instance'] # Clean outputs, logs, and repos delete_project_outputs(instance.unique_name) delete_project_logs(instance.unique_name) delete_project_repos(instance.unique_name)
def project_pre_deleted(sender, **kwargs): instance = kwargs['instance'] # Clean outputs, logs, and repos delete_project_outputs(instance.unique_name) delete_project_logs(instance.unique_name) delete_project_repos(instance.unique_name)