diff options
Diffstat (limited to 'zuul/configloader.py')
-rw-r--r-- | zuul/configloader.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/zuul/configloader.py b/zuul/configloader.py index 10a33a1f0..22ad85144 100644 --- a/zuul/configloader.py +++ b/zuul/configloader.py @@ -603,6 +603,7 @@ class JobParser(object): 'final': bool, 'abstract': bool, 'protected': bool, + 'intermediate': bool, 'requires': to_list(str), 'provides': to_list(str), 'failure-message': str, @@ -655,6 +656,7 @@ class JobParser(object): 'final', 'abstract', 'protected', + 'intermediate', 'timeout', 'post-timeout', 'workspace', @@ -810,6 +812,9 @@ class JobParser(object): job.roles, secrets) job.run = job.run + (run,) + if conf.get('intermediate', False) and not conf.get('abstract', False): + raise Exception("An intermediate job must also be abstract") + for k in self.simple_attributes: a = k.replace('-', '_') if k in conf: |