1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2025-09-02 19:32:34 +01:00

Implement Executor's postamble

This commit is contained in:
Sergei Trofimov
2017-03-17 17:05:40 +00:00
parent add6dafa2d
commit 326ab827ed
3 changed files with 28 additions and 22 deletions

View File

@@ -14,11 +14,11 @@
#
import uuid
import logging
from collections import OrderedDict, Counter
from copy import copy
from datetime import datetime, timedelta
from collections import OrderedDict
from wa.framework.configuration.core import RunStatus
from wa.framework.configuration.core import RunStatus, JobStatus
class RunInfo(object):
@@ -73,6 +73,11 @@ class RunState(object):
instance.jobs = OrderedDict(((js.id, js.iteration), js) for js in jss)
return instance
@property
def num_completed_jobs(self):
return sum(1 for js in self.jobs.itervalues()
if js.status > JobStatus.SKIPPED)
def __init__(self):
self.jobs = OrderedDict()
self.status = RunStatus.NEW
@@ -87,6 +92,12 @@ class RunState(object):
state.status = job.status
state.timestamp = datetime.now()
def get_status_counts(self):
counter = Counter()
for job_state in self.jobs.itervalues():
counter[job_state.status] += 1
return counter
def to_pod(self):
return OrderedDict(
status=str(self.status),