Convert runner helper to be a step-runner

Problem

Currently, the step-runner is deployed into the build container for docker-executor Runners by fetching the step-runner image, extracting the step-runner binary from the image, attaching it to a volume, and making the volume available to the build container. This is considered too inefficient for the initial implementation.

Proposal

The gitlab-runner-helper binary should become a step-runner.

In scope

The step-runner CLI commands proxy and serve should be made available to the runner helper.

  • serve starts the step-runner gRPC server
  • proxy tunnels gRPC messages from stdin/stdout to the local gRPC server started on serve

Out of scope

  • The bootstrap command is likely not going to be used. Unless we want to use it to copy the runner helper helper to the build container. If so, we can do that in a future issue
  • Adding the runner helper to the build container

References

Edited by Cameron Swords