summaryrefslogtreecommitdiff
path: root/ick2/projectapi.py
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2018-07-26 10:37:51 +0300
committerLars Wirzenius <liw@liw.fi>2018-07-26 10:37:51 +0300
commit070edf9b2f55bdf50f84d2deb13a214031fce35d (patch)
treeec09dfba77478fd97f3356f5bcdd4d8baa335b33 /ick2/projectapi.py
parent44abb5b581b33dad7309cc36f65e3b6649c8886d (diff)
downloadick2-070edf9b2f55bdf50f84d2deb13a214031fce35d.tar.gz
Change: upon triggering build, check project defines all parameters
Diffstat (limited to 'ick2/projectapi.py')
-rw-r--r--ick2/projectapi.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/ick2/projectapi.py b/ick2/projectapi.py
index 90197ae..0d9f8f5 100644
--- a/ick2/projectapi.py
+++ b/ick2/projectapi.py
@@ -103,7 +103,16 @@ class ProjectAPI(ick2.ResourceApiBase):
def _get_actions(self, project): # pragma: no cover
actions = []
+ params = project.get('parameters', {})
for pipeline_name in project.get('pipelines', []):
pipeline = self._trans.get_resource('pipelines', pipeline_name)
+ wanted = pipeline.get('parameters', [])
+ missing = [
+ name
+ for name in wanted
+ if name not in params
+ ]
+ if missing:
+ raise ick2.ParametersMissing(missing)
actions.extend(list(pipeline['actions']))
return actions