mirror of
				https://github.com/ARM-software/workload-automation.git
				synced 2025-10-31 07:04:17 +00:00 
			
		
		
		
	Job output dir handling.
This commit is contained in:
		| @@ -927,7 +927,11 @@ class JobSpec(Configuration): | ||||
|         self.runtime_parameters = target_manager.merge_runtime_parameters(runtime_parameters) | ||||
|  | ||||
|     def finalize(self): | ||||
|         self.id = "-".join([source.config['id'] for source in self._sources[1:]])  # ignore first id, "global" | ||||
|         self.id = "-".join([source.config['id'] | ||||
|                             for source in self._sources[1:]])  # ignore first id, "global" | ||||
|         if self.label is None: | ||||
|             self.label = self.workload_name | ||||
|  | ||||
|  | ||||
|  | ||||
| # This is used to construct the list of Jobs WA will run | ||||
|   | ||||
| @@ -38,6 +38,10 @@ class Job(object): | ||||
|     def id(self): | ||||
|         return self.spec.id | ||||
|  | ||||
|     @property | ||||
|     def output_name(self): | ||||
|         return '{}-{}-{}'.format(self.id, self.spec.label, self.iteration) | ||||
|  | ||||
|     def __init__(self, spec, iteration, context): | ||||
|         self.logger = logging.getLogger('job') | ||||
|         self.spec = spec | ||||
|   | ||||
| @@ -104,6 +104,11 @@ class ExecutionContext(object): | ||||
|             return True | ||||
|         return self.current_job.spec.id != self.next_job.spec.id | ||||
|  | ||||
|     @property | ||||
|     def output_directory(self): | ||||
|         if self.current_job: | ||||
|             return os.path.join(self.output.basepath, self.current_job.output_name) | ||||
|         return self.output.basepath | ||||
|  | ||||
|     def __init__(self, cm, tm, output): | ||||
|         self.logger = logging.getLogger('context') | ||||
| @@ -133,6 +138,7 @@ class ExecutionContext(object): | ||||
|         if not self.job_queue: | ||||
|             raise RuntimeError('No jobs to run') | ||||
|         self.current_job = self.job_queue.pop(0) | ||||
|         os.makedirs(self.output_directory) | ||||
|         return self.current_job | ||||
|  | ||||
|     def end_job(self): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user