Cache and reuse gems for qa directory
From https://gitlab.com/gitlab-org/gitlab-ce/issues/55839, it looks like when RubyGems went down, all the QA-related specs that needed RubyGems also failed (e.g. https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/140316783).
One we can fix this is to cache vendor/qa
, but we might want to consider configuring bundler to use ../vendor
so that we can reuse gems as much as possible?