Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
b5f5b6dc
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b5f5b6dc
编写于
2月 26, 2018
作者:
S
Shinya Maeda
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add checksum to ci_job_artifacts
上级
2e87923d
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
24 addition
and
0 deletion
+24
-0
app/models/ci/job_artifact.rb
app/models/ci/job_artifact.rb
+5
-0
app/uploaders/job_artifact_uploader.rb
app/uploaders/job_artifact_uploader.rb
+10
-0
db/migrate/20180226050030_add_checksum_to_ci_job_artifacts.rb
...igrate/20180226050030_add_checksum_to_ci_job_artifacts.rb
+8
-0
db/schema.rb
db/schema.rb
+1
-0
未找到文件。
app/models/ci/job_artifact.rb
浏览文件 @
b5f5b6dc
...
@@ -6,6 +6,7 @@ module Ci
...
@@ -6,6 +6,7 @@ module Ci
belongs_to
:job
,
class_name:
"Ci::Build"
,
foreign_key: :job_id
belongs_to
:job
,
class_name:
"Ci::Build"
,
foreign_key: :job_id
before_save
:set_size
,
if: :file_changed?
before_save
:set_size
,
if: :file_changed?
before_save
:set_checksum
,
if: :file_changed?
mount_uploader
:file
,
JobArtifactUploader
mount_uploader
:file
,
JobArtifactUploader
...
@@ -25,6 +26,10 @@ module Ci
...
@@ -25,6 +26,10 @@ module Ci
self
.
size
=
file
.
size
self
.
size
=
file
.
size
end
end
def
set_checksum
self
.
checksum
=
file
.
checksum
end
def
expire_in
def
expire_in
expire_at
-
Time
.
now
if
expire_at
expire_at
-
Time
.
now
if
expire_at
end
end
...
...
app/uploaders/job_artifact_uploader.rb
浏览文件 @
b5f5b6dc
...
@@ -9,6 +9,12 @@ class JobArtifactUploader < GitlabUploader
...
@@ -9,6 +9,12 @@ class JobArtifactUploader < GitlabUploader
model
.
size
model
.
size
end
end
def
checksum
return
calc_checksum
if
model
.
checksum
.
nil?
model
.
checksum
end
def
store_dir
def
store_dir
dynamic_segment
dynamic_segment
end
end
...
@@ -21,6 +27,10 @@ class JobArtifactUploader < GitlabUploader
...
@@ -21,6 +27,10 @@ class JobArtifactUploader < GitlabUploader
private
private
def
calc_checksum
Digest
::
SHA256
.
file
(
file
.
path
).
hexdigest
end
def
dynamic_segment
def
dynamic_segment
creation_date
=
model
.
created_at
.
utc
.
strftime
(
'%Y_%m_%d'
)
creation_date
=
model
.
created_at
.
utc
.
strftime
(
'%Y_%m_%d'
)
...
...
db/migrate/20180226050030_add_checksum_to_ci_job_artifacts.rb
0 → 100644
浏览文件 @
b5f5b6dc
class
AddChecksumToCiJobArtifacts
<
ActiveRecord
::
Migration
DOWNTIME
=
false
def
change
add_column
:ci_job_artifacts
,
:checksum
,
:string
,
limit:
64
end
end
db/schema.rb
浏览文件 @
b5f5b6dc
...
@@ -346,6 +346,7 @@ ActiveRecord::Schema.define(version: 20180304204842) do
...
@@ -346,6 +346,7 @@ ActiveRecord::Schema.define(version: 20180304204842) do
t
.
datetime_with_timezone
"updated_at"
,
null:
false
t
.
datetime_with_timezone
"updated_at"
,
null:
false
t
.
datetime_with_timezone
"expire_at"
t
.
datetime_with_timezone
"expire_at"
t
.
string
"file"
t
.
string
"file"
t
.
string
"checksum"
,
limit:
64
end
end
add_index
"ci_job_artifacts"
,
[
"expire_at"
,
"job_id"
],
name:
"index_ci_job_artifacts_on_expire_at_and_job_id"
,
using: :btree
add_index
"ci_job_artifacts"
,
[
"expire_at"
,
"job_id"
],
name:
"index_ci_job_artifacts_on_expire_at_and_job_id"
,
using: :btree
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录