Add Azure Blob Storage support
This uses our custom Azure gem (https://gitlab.com/gitlab-org/gitlab-fog-azure-rm) to integrate direct upload access with GitLab. Because the Azure Put Blob API does not work with chunked encoding, uploads cannot be streamed directly via a pre-signed URL without saving to disk first. To make this work without that, we need to add an Azure client directly in Workhorse that uses the Put Block and Put Block List API. The Workhorse client is implemented in https://gitlab.com/gitlab-org/gitlab-workhorse/-/merge_requests/555. We use the Go Cloud Development Kit to generate a URL (e.g. `azblob://container`) that can be extended for other object storage providers. Part of https://gitlab.com/gitlab-org/gitlab/-/issues/25877
Showing
... | ... | @@ -119,6 +119,7 @@ gem 'fog-local', '~> 0.6' |
gem 'fog-openstack', '~> 1.0' | ||
gem 'fog-rackspace', '~> 0.1.1' | ||
gem 'fog-aliyun', '~> 0.3' | ||
gem 'gitlab-fog-azure-rm', '~> 0.7', require: false | ||
# for Google storage | ||
gem 'google-api-client', '~> 0.33' | ||
... | ... |
Please register or sign in to comment