summaryrefslogtreecommitdiff
path: root/app/services/ci/create_trace_artifact_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/ci/create_trace_artifact_service.rb')
-rw-r--r--app/services/ci/create_trace_artifact_service.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/app/services/ci/create_trace_artifact_service.rb b/app/services/ci/create_trace_artifact_service.rb
new file mode 100644
index 00000000000..280a2c3afa4
--- /dev/null
+++ b/app/services/ci/create_trace_artifact_service.rb
@@ -0,0 +1,16 @@
+module Ci
+ class CreateTraceArtifactService < BaseService
+ def execute(job)
+ return if job.job_artifacts_trace
+
+ job.trace.read do |stream|
+ if stream.file?
+ job.create_job_artifacts_trace!(
+ project: job.project,
+ file_type: :trace,
+ file: stream)
+ end
+ end
+ end
+ end
+end