Class: Travis::Client::Job

Inherits:
Entity
  • Object
show all
Includes:
Restartable, States
Defined in:
lib/travis/client/job.rb

Constant Summary

Constants included from States

States::STATES

Constants inherited from Entity

Entity::MAP

Instance Attribute Summary collapse

Attributes inherited from Entity

#attributes, #curry, #id, #session

Instance Method Summary collapse

Methods included from States

#canceled?, #color, #created?, #errored?, #failed?, #finished?, #green?, #passed?, #pending?, #queued?, #ready?, #received?, #red?, #running?, #started?, #unsuccessful?, #yellow?

Methods included from Restartable

#cancel, #cancelable?, #restart, #restartable?

Methods inherited from Entity

#[], #[]=, aka, #attribute_names, attributes, base_path, #cancelable?, cast_id, #complete?, has, has_singleton, id?, id_field, #include?, #initialize, #inspect, inspect_info, #load, many, #missing?, one, preloadable, preloadable?, relations, #relations, #reload, #restartable?, subclass_for, subclasses, time, #to_h, #update_attributes, weak?

Constructor Details

This class inherits a constructor from Travis::Client::Entity

Instance Attribute Details

#allow_failureObject (readonly) Also known as: allow_failure?

Returns the value of attribute allow_failure.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def allow_failure
  @allow_failure
end

#annotationsObject (readonly)

Returns the value of attribute annotations.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def annotations
  @annotations
end

#buildObject (readonly)

Returns the value of attribute build.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def build
  @build
end

#build_idObject (readonly)

Returns the value of attribute build_id.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def build_id
  @build_id
end

#commitObject (readonly)

Returns the value of attribute commit.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def commit
  @commit
end

#commit_idObject (readonly)

Returns the value of attribute commit_id.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def commit_id
  @commit_id
end

#configObject (readonly)

Returns the value of attribute config.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def config
  @config
end

#finished_atObject (readonly)

Returns the value of attribute finished_at.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def finished_at
  @finished_at
end

#log_idObject (readonly)

Returns the value of attribute log_id.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def log_id
  @log_id
end

#numberObject (readonly)

Returns the value of attribute number.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def number
  @number
end

#queueObject (readonly)

Returns the value of attribute queue.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def queue
  @queue
end

#repositoryObject (readonly)

Returns the value of attribute repository.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def repository
  @repository
end

#repository_idObject (readonly)

Returns the value of attribute repository_id.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def repository_id
  @repository_id
end

#started_atObject (readonly)

Returns the value of attribute started_at.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def started_at
  @started_at
end

#stateObject (readonly)

Returns the value of attribute state.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def state
  @state
end

#tagsObject (readonly)

Returns the value of attribute tags.



1
2
3
# File 'lib/travis/client/job.rb', line 1

def tags
  @tags
end

Instance Method Details

#allow_failures?Boolean

Returns:

  • (Boolean)


33
34
35
36
37
38
# File 'lib/travis/client/job.rb', line 33

def allow_failures?
  return false unless config.include? 'matrix' and config['matrix'].include? 'allow_failures'
  config['matrix']['allow_failures'].any? do |allow|
    allow.all? { |key, value| config[key] == value }
  end
end

#branch_infoObject



29
30
31
# File 'lib/travis/client/job.rb', line 29

def branch_info
  build.branch_info
end

#delete_log(reason = {}) ⇒ Object



48
49
50
# File 'lib/travis/client/job.rb', line 48

def delete_log(reason = {})
  log.delete_body(reason)
end

#durationObject



40
41
42
43
44
45
46
# File 'lib/travis/client/job.rb', line 40

def duration
  attributes['duration'] ||= begin
    start  = started_at  || Time.now
    finish = finished_at || Time.now
    (finish - start).to_i
  end
end

#inspect_infoObject



56
57
58
# File 'lib/travis/client/job.rb', line 56

def inspect_info
  "#{repository.slug}##{number}"
end

#pull_request?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/travis/client/job.rb', line 21

def pull_request?
  build.pull_request?
end

#push?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/travis/client/job.rb', line 25

def push?
  build.push?
end

#pusher_channelsObject



52
53
54
# File 'lib/travis/client/job.rb', line 52

def pusher_channels
  build.pusher_channels + ["job-#{id}"]
end