Sha256: 46069a9f2de03c7371026600587c6c1e603f606c4f2ab57b6a4c940ad5b38906
Contents?: true
Size: 1.59 KB
Versions: 1
Compression:
Stored size: 1.59 KB
Contents
namespace :slack do namespace :deploy do task :starting do run_locally do text = "#{ENV['USER'] || ENV['USERNAME']} has started deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'unknown stage'}." Slackistrano.post( team: fetch(:slack_team), token: fetch(:slack_token), payload: { channel: fetch(:slack_channel), username: fetch(:slack_username), icon_url: fetch(:slack_icon_url), text: text } ) end end task :finished do run_locally do text = "#{ENV['USER'] || ENV['USERNAME']} has finished deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'unknown stage'}." Slackistrano.post( team: fetch(:slack_team), token: fetch(:slack_token), payload: { channel: fetch(:slack_channel), username: fetch(:slack_username), icon_url: fetch(:slack_icon_url), text: text } ) end end end end before 'deploy:starting', 'slack:deploy:starting' after 'deploy:finished', 'slack:deploy:finished' namespace :load do task :defaults do set :slack_team, ->{ nil } # If URL is 'team.slack.com', value is 'team'. Required. set :slack_token, ->{ nil } # Token from Incoming WebHooks. Required. set :slack_icon_url, ->{ "http://gravatar.com/avatar/885e1c523b7975c4003de162d8ee8fee?r=g&s=40" } set :slack_channel, ->{ "#general" } set :slack_username, ->{ "Slackistrano" } end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
slackistrano-0.0.4 | lib/slackistrano/tasks/slack.rake |