Code Review
/
csit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
PAL: Add replacing of data in tables
[csit.git]
/
resources
/
tools
/
presentation
/
specification_parser.py
diff --git
a/resources/tools/presentation/specification_parser.py
b/resources/tools/presentation/specification_parser.py
index
b459bd3
..
9852d90
100644
(file)
--- a/
resources/tools/presentation/specification_parser.py
+++ b/
resources/tools/presentation/specification_parser.py
@@
-425,14
+425,22
@@
class Specification(object):
for job, builds in data_set.items():
if builds:
if isinstance(builds, dict):
for job, builds in data_set.items():
if builds:
if isinstance(builds, dict):
- build_
nr
= builds.get("end", None)
+ build_
end
= builds.get("end", None)
try:
try:
- build_
nr = int(build_nr
)
+ build_
end = int(build_end
)
except ValueError:
# defined as a range <start, build_type>
except ValueError:
# defined as a range <start, build_type>
- build_nr = self._get_build_number(job, build_nr)
- builds = [x for x in range(builds["start"], build_nr+1)]
+ build_end = self._get_build_number(job, build_end)
+ builds = [x for x in range(builds["start"], build_end+1)
+ if x not in builds.get("skip", list())]
self.configuration["data-sets"][set_name][job] = builds
self.configuration["data-sets"][set_name][job] = builds
+ elif isinstance(builds, list):
+ for idx, item in enumerate(builds):
+ try:
+ builds[idx] = int(item)
+ except ValueError:
+ # defined as a range <build_type>
+ builds[idx] = self._get_build_number(job, item)
# Data sets: add sub-sets to sets (only one level):
for set_name, data_set in self.configuration["data-sets"].items():
# Data sets: add sub-sets to sets (only one level):
for set_name, data_set in self.configuration["data-sets"].items():
@@
-515,13
+523,14
@@
class Specification(object):
for job, builds in self._cfg_yaml[idx]["builds"].items():
if builds:
if isinstance(builds, dict):
for job, builds in self._cfg_yaml[idx]["builds"].items():
if builds:
if isinstance(builds, dict):
- build_
nr
= builds.get("end", None)
+ build_
end
= builds.get("end", None)
try:
try:
- build_
nr = int(build_nr
)
+ build_
end = int(build_end
)
except ValueError:
# defined as a range <start, build_type>
except ValueError:
# defined as a range <start, build_type>
- build_nr = self._get_build_number(job, build_nr)
- builds = [x for x in range(builds["start"], build_nr+1)]
+ build_end = self._get_build_number(job, build_end)
+ builds = [x for x in range(builds["start"], build_end+1)
+ if x not in builds.get("skip", list())]
self._specification["input"]["builds"][job] = list()
for build in builds:
self._specification["input"]["builds"][job]. \
self._specification["input"]["builds"][job] = list()
for build in builds:
self._specification["input"]["builds"][job]. \
@@
-628,6
+637,11
@@
class Specification(object):
if isinstance(data_set, str):
element[item]["data"] = \
self.configuration["data-sets"][data_set]
if isinstance(data_set, str):
element[item]["data"] = \
self.configuration["data-sets"][data_set]
+ data_set = element[item].get("data-replacement",
+ None)
+ if isinstance(data_set, str):
+ element[item]["data-replacement"] = \
+ self.configuration["data-sets"][data_set]
if element.get("history", None):
for i in range(len(element["history"])):
if element.get("history", None):
for i in range(len(element["history"])):
@@
-635,6
+649,11
@@
class Specification(object):
if isinstance(data_set, str):
element["history"][i]["data"] = \
self.configuration["data-sets"][data_set]
if isinstance(data_set, str):
element["history"][i]["data"] = \
self.configuration["data-sets"][data_set]
+ data_set = element["history"][i].get(
+ "data-replacement", None)
+ if isinstance(data_set, str):
+ element["history"][i]["data-replacement"] = \
+ self.configuration["data-sets"][data_set]
except KeyError:
raise PresentationError("Wrong data set used in {0}.".
except KeyError:
raise PresentationError("Wrong data set used in {0}.".