Make it easier to clone multiple repositories into build

Currently we have some customers that are using Google's repo tool (https://gerrit.googlesource.com/git-repo) to use an Android manifest file and clone multiple projects with it.

To use this:

  1. They need to set GIT_STRATEGY: none in the CI build.
  2. They run repo in the before_script block.
  3. As a result, the Git clones happen in the build container, not the helper container.

They use Kubernetes runners. Because the helper container already has to be scaled up to support CI artifacts etc., they now have to size up the build containers to accommodate these clones.

This is effectively causing them to pay 2X the cost to support the GitLab CI runners.

One possible solution would be to natively support repo. For example, we could ship repo with the helper image and add GIT_STRATEGY: repo instead.

@josephburnett Are there alternative solutions out there that would accomplish this in a similar way? For example, is there a way in CI steps to define a custom Git clone strategy that uses the helper container?

Edited by Stan Hu