Commit Graph

25 Commits

Author SHA1 Message Date
GitLab Bot 840c85c174 Add latest changes from gitlab-org/gitlab@master 2021-10-19 21:12:08 +00:00
GitLab Bot d9115c7779 Add latest changes from gitlab-org/gitlab@master 2021-08-31 21:10:43 +00:00
GitLab Bot 0c922a0a15 Add latest changes from gitlab-org/gitlab@master 2021-07-03 12:08:08 +00:00
GitLab Bot 814fd46dfd Add latest changes from gitlab-org/gitlab@master 2021-04-23 00:09:47 +00:00
GitLab Bot bf562015bb Add latest changes from gitlab-org/gitlab@master 2021-02-23 03:10:56 +00:00
GitLab Bot b6e10aaed7 Add latest changes from gitlab-org/gitlab@master 2021-02-10 09:09:38 +00:00
GitLab Bot 7ace0e99be Add latest changes from gitlab-org/gitlab@master 2021-01-27 00:08:53 +00:00
GitLab Bot cb36ae7dd5 Add latest changes from gitlab-org/gitlab@master 2020-12-08 21:10:06 +00:00
GitLab Bot 38de2aa494 Add latest changes from gitlab-org/gitlab@master 2020-11-19 09:09:38 +00:00
GitLab Bot b296ffa543 Add latest changes from gitlab-org/gitlab@master 2020-09-09 21:08:33 +00:00
GitLab Bot f675c7d41d Add latest changes from gitlab-org/gitlab@master 2020-09-07 06:08:35 +00:00
GitLab Bot de0c73ffc5 Add latest changes from gitlab-org/gitlab@master 2020-08-31 09:10:44 +00:00
GitLab Bot fb10c412ec Add latest changes from gitlab-org/gitlab@master 2020-08-20 06:10:17 +00:00
GitLab Bot fefca4c7b9 Add latest changes from gitlab-org/gitlab@master 2020-08-20 03:10:04 +00:00
GitLab Bot 88ad172d04 Add latest changes from gitlab-org/gitlab@master 2020-08-05 09:10:01 +00:00
GitLab Bot b922b2f47a Add latest changes from gitlab-org/gitlab@master 2020-07-03 12:08:53 +00:00
GitLab Bot ce493944f4 Add latest changes from gitlab-org/gitlab@master 2020-06-19 18:08:39 +00:00
GitLab Bot 86e1f47cd1 Add latest changes from gitlab-org/gitlab@master 2020-06-05 15:08:23 +00:00
GitLab Bot ab801bd018 Add latest changes from gitlab-org/gitlab@master 2020-05-27 18:08:14 +00:00
gfyoung c8755543f0 Enable even more frozen string in lib/**/*.rb
Enables frozen string for the following files:

* lib/generators/**/*.rb
* lib/gitaly/**/*.rb
* lib/google_api/**/*.rb
* lib/haml_lint/**/*.rb
* lib/json_web_token/**/*.rb
* lib/mattermost/**/*.rb
* lib/microsoft_teams/**/*.rb
* lib/object_storage/**/*.rb
* lib/omni_auth/**/*.rb
* lib/peek/**/*.rb
* lib/rouge/**/*.rb
* lib/rspec_flaky/**/*.rb
* lib/system_check/**/*.rb

Partially addresses #47424.
2018-10-08 11:16:49 -07:00
Stan Hu 244ed8adb3 Fix object storage uploads not working with AWS v2
Because we were passing query strings as symbols, the fog-aws storage
driver was omitting the uploadId and partNumber query strings
from the signature in multipart uploads. This fix makes AWS and Ceph work with
v2 signatures.

See: https://github.com/fog/fog-aws/blob/v3.0.0/lib/fog/aws/storage.rb#L733

Closes https://gitlab.com/gitlab-org/gitlab-workhorse/issues/181
2018-09-14 07:43:39 -07:00
Stan Hu 262b974123 Fix attachments not displaying inline with Google Cloud Storage
There were several issues:

1. With Google Cloud Storage, we can't override the Content-Type with
Response-Content-Type once it is set.  Setting the value to
`application/octet-stream` doesn't buy us anything. GCS defaults to
`application/octet-stream`, and AWS uses `binary/octet-stream`. Just remove
this `Content-Type` when we upload new files.

2. CarrierWave and fog-google need to support query parameters:
https://github.com/fog/fog-google/pull/409/files, https://github.com/carrierwaveuploader/carrierwave/pull/2332/files.
CarrierWave has been monkey-patched until an official release.

3. Workhorse also needs to remove the Content-Type header in the request
(ef80978ff8/internal/objectstore/object.go (L66)),
or we'll get a 403 error when uploading due to signed URLs not matching the headers.
Upgrading to Workhorse 6.1.0 for https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/297
will make Workhorse use the headers that are used by Rails.

Closes #49957
2018-09-05 17:01:54 -07:00
Stan Hu 97cabfb65c Send required object storage PUT headers in /uploads/authorize API
As revealed in https://gitlab.com/gitlab-org/gitlab-ce/issues/49957, Rails
generates a signed URL with a fixed HTTP header with `Content-Type:
application/octet-stream`. However, if we change or remove that for
some reason in Workhorse, this breaks the upload with a 403 Unauthorized because
the signed URL is not valid.

We can make this more robust by doing the following:

1. In the `/uploads/authorize` request, Rails can return a `StoreHeaders` key-value
pair in the JSON response containing the required headers that the PUT
request must include.
2. Use those HTTP headers if that value is present.
3. For backwards compatibility, if that key is not present, default to
the old behavior of sending the fixed `Content-Type` header.

See https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/297 as well.
2018-08-23 12:40:24 -07:00
Kamil Trzciński eea26a93e7 Update validator 2018-06-04 22:31:01 +02:00
Kamil Trzciński b8370c9f55 Support presigned multipart uploads 2018-06-04 13:04:29 +02:00