Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2017-05-04 18:01:54 +0300
committerSean McGivern <sean@mcgivern.me.uk>2017-05-04 18:01:54 +0300
commitd3768dd79698ae17cd0c82b7c78a8ead11b7e157 (patch)
tree5c98075e5a54fe3cb5f542487750a5fe3e9f40f3 /app/models
parenta07d03e7c777ed9e169576e8bb92edc4b5557a79 (diff)
parent0f58eb6bde35009b69ef871534d9ff80fc38bbf7 (diff)
Merge branch 'dm-artifact-blob-viewer' into 'master'
Use blob viewer for job artifacts Closes #31297 See merge request !11018
Diffstat (limited to 'app/models')
-rw-r--r--app/models/ci/artifact_blob.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/app/models/ci/artifact_blob.rb b/app/models/ci/artifact_blob.rb
new file mode 100644
index 00000000000..b35febc9ac5
--- /dev/null
+++ b/app/models/ci/artifact_blob.rb
@@ -0,0 +1,35 @@
+module Ci
+ class ArtifactBlob
+ include BlobLike
+
+ attr_reader :entry
+
+ def initialize(entry)
+ @entry = entry
+ end
+
+ delegate :name, :path, to: :entry
+
+ def id
+ Digest::SHA1.hexdigest(path)
+ end
+
+ def size
+ entry.metadata[:size]
+ end
+
+ def data
+ "Build artifact #{path}"
+ end
+
+ def mode
+ entry.metadata[:mode]
+ end
+
+ def external_storage
+ :build_artifact
+ end
+
+ alias_method :external_size, :size
+ end
+end