Explore object-storage QA opportunities for package stage features
Background
Features in the package stage make heavy use of uploads. There are two major ways uploads can be configured:
- Local storage
- Object storage
With the object storage option, there are a variety of providers that can be used:
- GCP Storage
- AWS S3
- Azure Blob Storage
- MinIO.
- Others
There are also a variety of settings that can be used when using object storage:
background_uploadproxy_uploaddirect_upload
Looking at these options, it can be seen that any given GitLab instance could be configured in dozens of different ways.
Proposal
We have some ways of writing tests against the different object storage settings and testing object storage versus local storage, but I am not aware of any automated tests that allow us to test against the variety of object storage providers. If we could automate some of these tests, it could save time during development, and lower risk of a platform specific bug making it to production.