Steps execution via Connect()
What does this MR do?
Existing Steps execution is quite Docker specific.
- This moves some of the common elements out to the
stepspackage - Moves the Docker specific part to adhere to the
Connect()interface, where we return aio.ReadWriteCloser, representing a connection to a step-runner.
Why was this MR needed?
- Eventually, other executors will implement
Connect() - Paves the way to use
Connect() to execute steps in other contexts, other than just our existingrun:` scenario.
What's the best way to test this MR?
The existing functionality was rely mostly on integration tests. I think for this MR we should also rely on them, and then increase test coverage as we refactor to accomodate additional scripts-to-steps.
What are the relevant issue numbers?
Closes step-runner#288
Edited by Arran Walker