Class: Bard::CI::GithubActions::Run

Inherits:
Struct
  • Object
show all
Defined in:
lib/bard/plugins/deploy/ci/github_actions.rb

Instance Method Summary collapse

Instance Method Details

#branchObject



160
161
162
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 160

def branch
  json["head_branch"]
end

#building?Boolean

Returns:

  • (Boolean)


139
140
141
142
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 139

def building?
  %w[in_progress queued requested waiting pending]
    .include?(json["status"])
end

#conclusionObject



172
173
174
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 172

def conclusion
  json["conclusion"]
end

#consoleObject



156
157
158
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 156

def console
  job.logs
end

#failure?Boolean

Returns:

  • (Boolean)


148
149
150
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 148

def failure?
  conclusion == "failure"
end

#idObject



131
132
133
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 131

def id
  json["id"]
end

#jobObject



152
153
154
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 152

def job
  @job ||= api.find_job_by_run_id(id)
end

#shaObject



164
165
166
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 164

def sha
  json["head_sha"]
end

#started_atObject



176
177
178
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 176

def started_at
  Time.parse(json["run_started_at"])
end

#statusObject



168
169
170
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 168

def status
  json["status"]
end

#success?Boolean

Returns:

  • (Boolean)


144
145
146
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 144

def success?
  status == "completed" && conclusion == "success"
end

#time_elapsedObject



135
136
137
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 135

def time_elapsed
  job.time_elapsed
end

#updated_atObject



180
181
182
# File 'lib/bard/plugins/deploy/ci/github_actions.rb', line 180

def updated_at
  Time.parse(json["updated_at"])
end