Use native executor git repo support in SSBC
Created by: eseliger
This PR turns on repo cloning in executors for batch changes. It clones the repo into the workspace, adds cache files and the input and spawns the execution from that. This requires a change in src-cli and makes the repo fetching process faster, more resilient (in my testing) and enables to run on the largest repos without bigger problems. Also, we have a grafana dashboard for executor cloning performance.
Stats for nerds
Ran on my Mac:
120 workspaces total, some of them are workspaces in subdirectories with onlyFetchWorkspaces
on.
Total execution time: Before: 03:35 minutes, after: 01:09 minutes.
Also, in the 03:35 minute run the mac would start heating up a lot, it stayed mostly cool in the 01:09 minute run.
sgtest/megarepo: Setting up the workspace before: ~8 minutes, now 2 minutes.
Also, see this: https://github.com/sourcegraph/sourcegraph/pull/37299 PR; it's the follow-up for post-3.41 cut to remove the access_token_id column from the database as well.
Test plan
Lots of validation testing. Will throw a giant execution in k8s at it too once it's out.