Index: recipe_engine/run.py |
diff --git a/recipe_engine/run.py b/recipe_engine/run.py |
index 7d97e6cad13b975f44753a86aa25dde7f0b54b75..1b2710a92ffb3500ce441237133d15189fe2344f 100644 |
--- a/recipe_engine/run.py |
+++ b/recipe_engine/run.py |
@@ -211,7 +211,7 @@ def run_steps(properties, stream_engine, step_runner, universe_view): |
'TESTING_SLAVENAME' in os.environ)): |
properties['use_mirror'] = False |
- with stream_engine.new_step_stream('setup_build') as s: |
+ with stream_engine.make_step_stream('setup_build') as s: |
engine = RecipeEngine(step_runner, properties, universe_view) |
# Create all API modules and top level RunSteps function. It doesn't launch |
@@ -298,7 +298,7 @@ class RecipeEngine(object): |
""" |
ActiveStep = collections.namedtuple('ActiveStep', ( |
- 'step', 'step_result', 'open_step', 'nest_level')) |
+ 'config', 'step_result', 'open_step')) |
def __init__(self, step_runner, properties, universe_view): |
"""See run_steps() for parameter meanings.""" |
@@ -350,48 +350,44 @@ class RecipeEngine(object): |
Args: |
level (int): the nest level to close through. |
""" |
- while self._step_stack and self._step_stack[-1].nest_level >= level: |
+ while self._step_stack and self._step_stack[-1].config.nest_level >= level: |
cur = self._step_stack.pop() |
if cur.step_result: |
cur.step_result.presentation.finalize(cur.open_step.stream) |
cur.open_step.finalize() |
- def run_step(self, step): |
+ def run_step(self, step_dict): |
""" |
Runs a step. |
Args: |
- step: The step to run. |
+ step_dict (dict): A step dictionary to run. |
Returns: |
A StepData object containing the result of running the step. |
""" |
+ step_config = recipe_api._make_step_config(**step_dict) |
with util.raises((recipe_api.StepFailure, OSError), |
self._step_runner.stream_engine): |
- ok_ret = step.pop('ok_ret') |
- infra_step = step.pop('infra_step') |
- |
step_result = None |
- nest_level = step.get('step_nest_level', 0) |
- self._close_through_level(nest_level) |
+ self._close_through_level(step_config.nest_level) |
- open_step = self._step_runner.open_step(step) |
+ open_step = self._step_runner.open_step(step_config) |
self._step_stack.append(self.ActiveStep( |
- step=step, |
+ config=step_config, |
step_result=None, |
- open_step=open_step, |
- nest_level=nest_level)) |
+ open_step=open_step)) |
step_result = open_step.run() |
self._step_stack[-1] = ( |
self._step_stack[-1]._replace(step_result=step_result)) |
- if step_result.retcode in ok_ret: |
+ if step_result.retcode in step_config.ok_ret: |
step_result.presentation.status = 'SUCCESS' |
return step_result |
else: |
- if not infra_step: |
+ if not step_config.infra_step: |
state = 'FAILURE' |
exc = recipe_api.StepFailure |
else: |
@@ -403,7 +399,7 @@ class RecipeEngine(object): |
self._step_stack[-1].open_step.stream.write_line( |
'step returned non-zero exit code: %d' % step_result.retcode) |
- raise exc(step['name'], step_result) |
+ raise exc(step_config.name, step_result) |
def run(self, recipe_script, api): |
"""Run a recipe represented by a recipe_script object. |
@@ -465,18 +461,6 @@ class RecipeEngine(object): |
result['name'] = '$result' |
return RecipeResult(result) |
- def create_step(self, step): # pylint: disable=R0201 |
- """Called by step module to instantiate a new step. |
- |
- Args: |
- step: ConfigGroup object with information about the step, see |
- recipe_modules/step/config.py. |
- |
- Returns: |
- Opaque engine specific object that is understood by 'run_steps' method. |
- """ |
- return step.as_jsonish() |
- |
def depend_on(self, recipe, properties, distributor=None): |
return self.depend_on_multi( |
((recipe, properties),), distributor=distributor)[0] |