summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorTomasz Maczukin <tomasz@maczukin.pl>2017-02-16 01:05:44 +0100
committerTomasz Maczukin <tomasz@maczukin.pl>2017-03-02 17:45:45 +0100
commit3eafffcef0f8932bab4e06b465f9b63327e87942 (patch)
treecdb64b4be94007d4b8d0ce380862f21a027267fa /app
parent3d26a8d0b62f70e02917f7601bc2032fb3aed7e6 (diff)
downloadgitlab-ce-3eafffcef0f8932bab4e06b465f9b63327e87942.tar.gz
Refactor JobRequest response structure
Diffstat (limited to 'app')
-rw-r--r--app/models/ci/build.rb29
-rw-r--r--app/services/ci/register_job_service.rb (renamed from app/services/ci/register_build_service.rb)2
2 files changed, 30 insertions, 1 deletions
diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb
index f2989eff22d..0c0bbb9d41d 100644
--- a/app/models/ci/build.rb
+++ b/app/models/ci/build.rb
@@ -508,6 +508,35 @@ module Ci
]
end
+ def steps
+ [
+ Gitlab::Ci::Build::Response::Step.from_commands(self),
+ Gitlab::Ci::Build::Response::Step.from_after_script(self)
+ ].compact
+ end
+
+ def image
+ image = Gitlab::Ci::Build::Response::Image.new(options[:image])
+ return unless image.valid?
+ image
+ end
+
+ def services
+ services = options[:services].map do |service|
+ Gitlab::Ci::Build::Response::Image.new(service)
+ end
+
+ services.select(&:valid?).compact
+ end
+
+ def artifacts
+ options[:artifacts]
+ end
+
+ def cache
+ options[:cache]
+ end
+
def credentials
Gitlab::Ci::Build::Credentials::Factory.new(self).create!
end
diff --git a/app/services/ci/register_build_service.rb b/app/services/ci/register_job_service.rb
index 5b52a0425de..0ab9042bf24 100644
--- a/app/services/ci/register_build_service.rb
+++ b/app/services/ci/register_job_service.rb
@@ -1,7 +1,7 @@
module Ci
# This class responsible for assigning
# proper pending build to runner on runner API request
- class RegisterBuildService
+ class RegisterJobService
include Gitlab::CurrentSettings
attr_reader :runner