diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2017-09-05 12:16:49 +0300 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2017-09-05 12:16:49 +0300 |
commit | dfb8fcbb651812d209d2f42baf6c2bb0e851c861 (patch) | |
tree | 5a41087e6808929315ca10ca5c9b3ea2c01a44b5 | |
parent | 83600e94262c1fadae98f1e0709f2430aaea03b7 (diff) |
Use API helper to send artifact file through Workhorse
-rw-r--r-- | lib/api/helpers.rb | 4 | ||||
-rw-r--r-- | lib/api/jobs.rb | 2 | ||||
-rw-r--r-- | spec/requests/api/jobs_spec.rb | 5 |
3 files changed, 7 insertions, 4 deletions
diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb index 3d377fdb9eb..f9ce1165544 100644 --- a/lib/api/helpers.rb +++ b/lib/api/helpers.rb @@ -432,6 +432,10 @@ module API header(*Gitlab::Workhorse.send_git_archive(repository, ref: ref, format: format)) end + def send_artifacts_entry(build, entry) + header(*Gitlab::Workhorse.send_artifacts_entry(build, entry)) + end + # The Grape Error Middleware only has access to env but no params. We workaround this by # defining a method that returns the right value. def define_params_for_grape_middleware diff --git a/lib/api/jobs.rb b/lib/api/jobs.rb index 41b3b28037c..41c70a2dcb7 100644 --- a/lib/api/jobs.rb +++ b/lib/api/jobs.rb @@ -101,7 +101,7 @@ module API entry = build.artifacts_metadata_entry(params[:artifact_path]) not_found! unless entry.exists? - Gitlab::Workhorse.send_artifacts_entry(build, entry) + send_artifacts_entry(build, entry) end desc 'Download the artifacts file from a job' do diff --git a/spec/requests/api/jobs_spec.rb b/spec/requests/api/jobs_spec.rb index 00e761e8919..ba5cab3265a 100644 --- a/spec/requests/api/jobs_spec.rb +++ b/spec/requests/api/jobs_spec.rb @@ -215,10 +215,9 @@ describe API::Jobs do get_artifact_file(artifact) expect(response).to have_http_status(200) - expect(response.body) - .to include 'Gitlab-Workhorse-Send-Data', 'artifacts-entry' expect(response.headers) - .to include('Content-Type' => 'application/json') + .to include('Content-Type' => 'application/json', + 'Gitlab-Workhorse-Send-Data' => /artifacts-entry/) end end |