Module: Jackal::Nellie::Formatter::MessageExtract

Included in:
GithubCommitComment, SlackComment
Defined in:
lib/jackal-nellie/formatter.rb

Instance Method Summary collapse

Instance Method Details

#failure_message(payload) ⇒ String

Message for failure results

Parameters:

  • payload (Smash)

Returns:

  • (String)


23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/jackal-nellie/formatter.rb', line 23

def failure_message(payload)
  msg = ['[nellie]: Failure encountered:']
  msg << ''
  failed_history = payload.fetch(:data, :nellie, :history, {}).detect do |i|
    i[:exit_code] != 0
  end
  if(failed_history)
    msg << '* STDOUT:' << '' << '```'
    msg << asset_store.get(failed_history.get(:logs, :stdout)).read
    msg << '```' << ''
    msg << '* STDERR:' << '' << '```'
    msg << asset_store.get(failed_history.get(:logs, :stderr)).read
    msg << '```'
  else
    msg << '```' << 'Failed to locate logs' << '```'
  end
  msg.join("\n")
end

#success_message(payload) ⇒ String

Message for successful results

Parameters:

  • payload (Smash)

Returns:

  • (String)


10
11
12
13
14
15
16
17
# File 'lib/jackal-nellie/formatter.rb', line 10

def success_message(payload)
  repo = [
    payload.get(:data, :code_fetcher, :info, :owner),
    payload.get(:data, :code_fetcher, :info, :name)
  ].join('/')
  sha = payload.get(:data, :code_fetcher, :info, :commit_sha)
  "[nellie]: Job completed successfully! (#{repo}@#{sha})"
end