Replace git exec with go-git library
Step runner needs to execute in the build environment, so it should have as few environmental dependencies as possible. Ideally zero. Right now we are exec'ing git
to fetch steps. We can replace that with the go-git
library and statically compile step runner so the binary is all we need to setup in the target environment.
Note: step runner only uses git to fetch steps. A step which clones a project for a build step will still use git
provided by the environment. So we don't lose compatibly with this change.