class Capistrano::Wearerequired::SlackistranoExpandedGitMessaging

Public Instance Methods

author_icon() click to toggle source
# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 65
def author_icon
  "https://required.com/content/themes/required-valencia/assets/img/character-%{name}-300x300.png" % { name: deployer.downcase }
end
current_revision() click to toggle source

Get current revision

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 16
def current_revision
  fetch(:current_revision)
end
current_revision_url() click to toggle source

Get current revision URL

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 40
def current_revision_url
  "<https://%{host}/%{owner}/%{repo}/%{commit}/%{revision}|%{revision_short}@%{branch}>" % {
    :host => repo[:host],
    :owner => repo[:owner],
    :repo => repo[:repo],
    :commit => 'bitbucket.org' == repo[:host] ? 'commits' : 'commit',
    :revision => current_revision,
    :revision_short => current_revision[0..10],
    :branch => branch
  }
end
payload_for_reverting() click to toggle source

Suppress reverting message.

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 11
def payload_for_reverting
  nil
end
payload_for_updated() click to toggle source

More detailed updated message.

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 94
def payload_for_updated
{
  attachments: [{
    color: 'good',
    pretext: application + ' was successfully deployed :white_check_mark:',
    author_name: deployer.capitalize,
    author_icon: author_icon,
    author_link: author_link,
    footer: footer,
    footer_icon: footer_icon,
    fields: [{
      title: 'Environment',
      value: stage.capitalize,
      short: true
    }, {
      title: 'Revision',
      value: revision,
      short: true
    }],
    fallback: application + ' was successfully deployed.'
  }]
}
end
payload_for_updating() click to toggle source

Suppress updating message.

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 6
def payload_for_updating
  nil
end
previous_revision() click to toggle source

Get previous revision

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 21
def previous_revision
  fetch(:previous_revision)
end
repo() click to toggle source

Get individual parts of the repo_url

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 26
def repo
  repo_url.match(/(git@|https:\/\/)(?<host>([\w\.@]+))(\/|:)(?<owner>[\w,\-,\_]+)\/(?<repo>[\w,\-,\_]+)(.git){0,1}((\/){0,1})/)
end
revision() click to toggle source

Get information about the revision being deployed

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 31
def revision
  if repo.nil? || current_revision.nil?
    'Unknown'
  else
    current_revision_url
  end
end
revision_compare_url() click to toggle source

Get revision comparison

# File lib/capistrano/wearerequired/slackistrano_extended_git_messaging.rb, line 53
def revision_compare_url
  "<https://%{host}/%{owner}/%{repo}/%{compare}/%{previous_revision}...%{current_revision}|%{revision_short}>" % {
    :host => repo[:host],
    :owner => repo[:owner],
    :repo => repo[:repo],
    :compare => 'bitbucket.org' == repo[:host] ? 'branches/compare' : 'compare',
    :current_revision => current_revision,
    :previous_revision => previous_revision,
    :revision_short => previous_revision[0..7] + '...' + current_revision[0..7]
  }
end