Class: BuildkiteGraphqlRuby::ResultsParsers::Build

Inherits:
OpenStruct
  • Object
show all
Defined in:
lib/buildkite_graphql_ruby/results_parsers/build.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from_response(build_response) ⇒ Object

NOT_RUN The build wasn’t run



34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/buildkite_graphql_ruby/results_parsers/build.rb', line 34

def self.from_response(build_response)
  jobs = build_response['jobs']["edges"].select{|j| j['node'].keys.count > 0 }.map{|build_response| ResultsParsers::Job.from_response(build_response) }
 
  new(
    branch: build_response['branch'],
    state: build_response['state'],
    url: build_response['url'],
    started_at: build_response['startedAt'] && Time.parse(build_response['startedAt']),
    finished_at: build_response['finishedAt'] && Time.parse(build_response['finishedAt']),
    pull_request: build_response['pullRequest'],
    jobs: jobs,
  )
end

Instance Method Details

#finished?Boolean



50
51
52
# File 'lib/buildkite_graphql_ruby/results_parsers/build.rb', line 50

def finished?
  !self.finished_at.nil?
end

#passed?Boolean



54
55
56
# File 'lib/buildkite_graphql_ruby/results_parsers/build.rb', line 54

def passed?
  self.state == 'PASSED'
end