mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-11 05:36:07 +10:00
Improvements, readability for artifacts browser
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
class Projects::ArtifactsController < Projects::ApplicationController
|
||||
layout 'project'
|
||||
before_action :authorize_download_build_artifacts!
|
||||
before_action :authorize_read_build_artifacts!
|
||||
|
||||
def download
|
||||
unless artifacts_file.file_storage?
|
||||
@@ -24,11 +24,11 @@ class Projects::ArtifactsController < Projects::ApplicationController
|
||||
end
|
||||
|
||||
def file
|
||||
file = build.artifacts_metadata_path(params[:path])
|
||||
file_path = build.artifacts_metadata_path(params[:path])
|
||||
|
||||
if file.exists?
|
||||
render json: { repository: build.artifacts_file.path,
|
||||
path: Base64.encode64(file.path) }
|
||||
if file_path.exists?
|
||||
render json: { archive: build.artifacts_file.path,
|
||||
path: Base64.encode64(file_path.path) }
|
||||
else
|
||||
render json: {}, status: 404
|
||||
end
|
||||
@@ -44,8 +44,8 @@ class Projects::ArtifactsController < Projects::ApplicationController
|
||||
@artifacts_file ||= build.artifacts_file
|
||||
end
|
||||
|
||||
def authorize_download_build_artifacts!
|
||||
unless can?(current_user, :download_build_artifacts, @project)
|
||||
def authorize_read_build_artifacts!
|
||||
unless can?(current_user, :read_build_artifacts, @project)
|
||||
if current_user.nil?
|
||||
return authenticate_user!
|
||||
else
|
||||
|
||||
@@ -175,7 +175,7 @@ class Ability
|
||||
:create_merge_request,
|
||||
:create_wiki,
|
||||
:manage_builds,
|
||||
:download_build_artifacts,
|
||||
:read_build_artifacts,
|
||||
:push_code
|
||||
]
|
||||
end
|
||||
|
||||
@@ -344,7 +344,7 @@ module Ci
|
||||
end
|
||||
|
||||
def artifacts_browser_supported?
|
||||
artifacts? && artifacts_file.path.end_with?('zip') && artifacts_metadata.exists?
|
||||
artifacts? && artifacts_metadata.exists?
|
||||
end
|
||||
|
||||
def artifacts_metadata_path(path)
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
|
||||
%td
|
||||
.pull-right
|
||||
- if current_user && can?(current_user, :download_build_artifacts, project) && build.artifacts?
|
||||
- if current_user && can?(current_user, :read_build_artifacts, project) && build.artifacts?
|
||||
= link_to build.artifacts_download_url, title: 'Download artifacts' do
|
||||
%i.fa.fa-download
|
||||
- if current_user && can?(current_user, :manage_builds, build.project)
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
Test coverage
|
||||
%h1 #{@build.coverage}%
|
||||
|
||||
- if current_user && can?(current_user, :download_build_artifacts, @project) && @build.artifacts?
|
||||
- if current_user && can?(current_user, :read_build_artifacts, @project) && @build.artifacts?
|
||||
|
||||
.build-widget.artifacts
|
||||
%h4.title Build artifacts
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
%td
|
||||
.pull-right
|
||||
- if current_user && can?(current_user, :download_build_artifacts, commit_status.project) && commit_status.artifacts?
|
||||
- if current_user && can?(current_user, :read_build_artifacts, commit_status.project) && commit_status.artifacts?
|
||||
= link_to commit_status.artifacts_download_url, title: 'Download artifacts' do
|
||||
%i.fa.fa-download
|
||||
- if current_user && can?(current_user, :manage_builds, commit_status.project)
|
||||
|
||||
@@ -56,7 +56,7 @@ module Gitlab
|
||||
next if path =~ invalid_pattern
|
||||
|
||||
paths.push(path)
|
||||
metadata.push(JSON.parse(meta.chomp, symbolize_names: true))
|
||||
metadata.push(JSON.parse(meta, symbolize_names: true))
|
||||
rescue JSON::ParserError, Encoding::CompatibilityError
|
||||
next
|
||||
end
|
||||
@@ -66,7 +66,7 @@ module Gitlab
|
||||
end
|
||||
|
||||
def read_version
|
||||
gzip do|gz|
|
||||
gzip do |gz|
|
||||
version_string = read_string(gz)
|
||||
|
||||
unless version_string
|
||||
@@ -95,9 +95,11 @@ module Gitlab
|
||||
def gzip
|
||||
open do |file|
|
||||
gzip = Zlib::GzipReader.new(file)
|
||||
result = yield gzip
|
||||
gzip.close
|
||||
result
|
||||
begin
|
||||
yield gzip
|
||||
ensure
|
||||
gzip.close
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user