Consider creating a pool of review apps to run multiple test jobs against
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=26756)
</details>
<!--IssueSummary end-->
When we start using review apps to [test orchestrated scenarios](https://gitlab.com/gitlab-org/gitlab-ce/issues/53774), it might be useful to be able to create a pool of review apps instead of always running one review app per job (which is what we do now in `package-and-qa` -- one GitLab docker container per job).
The way it might work is that when `gitlab-qa` is going to start a scenario, it could:
1. Check if a review app with a suitable configuration is available
* if not, start one (either by modifying the config of an existing idle review app, or starting a new one)
* or if one is available, use it
Then when the scenario is complete, if there are no pending jobs the review app is shut down, otherwise it's marked as idle and a pending jobs can use it.
issue