Skip to content

Use GoCloud interface for S3 access

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

In gitlab-workhorse!555 (merged), we are adding Azure blob storage support via the Go Cloud Development Kit (https://github.com/google/go-cloud), which is nice since it allows us to easily add new blob stores without changing too much.

S3 is a little bit complicated to support in this way because:

  1. We load credentials from the Workhorse config file, but we also receive more details of the bucket (e.g. path style, endpoint, etc.) from the Rails API.
  2. We load server side encryption headers. See https://github.com/google/go-cloud/issues/2802.
Edited by 🤖 GitLab Bot 🤖