Upload diagnostic reports to GCS
# Problem to solve In https://gitlab.com/gitlab-org/gitlab/-/issues/362900 we are looking to collect diagnostic reports in order to more easily debug production issues without help from SREs. Once these reports are available on pod-local storage, we should publish them to a GCS bucket so that any team with read access to that bucket can download them for further analysis. # Proposal For Puma, we cannot rely on uploads via Sidekiq, since they do not share storage in k8s. We will therefore have to initiate uploads directly from a Puma node. ## Requirements * Uploading potentially large files can be costly; any solution should have minimal impact on the ability of this node to serve user traffic. * The uploader will scan a local directory for pending reports, and upload them to a GCS bucket. * After a successful upload, local reports should be removed to free up storage.
epic