benchmarking: Add Ansible script to build Gitaly
As a first step towards being able to benchmark Gitaly at arbitrary commits, we need a repeatable way to create an instance and build Gitaly from source.
This MR adds Ansible playbooks to create nodes, build and install
Gitaly on them, and destroy them. A disk image is mounted to
/mnt/git-repositories
with five test repos on it.
The following is a list of the repositories chosen and the reason for their inclusion:
- git.git - A well-groomed smaller repository to represent a typical repo
- gitlab.git - Uses object pool, very large number of refs (6mm)
- linux.git - A well-groomed large repository
- homebrew-core.git - Repository with very large trees
- chromium.git - Very large repo (40+ GiB), with a large number of refs (4mm)
In a future MR we will add the ability to send gRPC traffic from the client node to Gitaly and measure its performance.
Edited by Will Chandler (ex-GitLab)