slackistrano 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/README.md +3 -3
- data/lib/slackistrano/tasks/slack.rake +14 -6
- data/lib/slackistrano/version.rb +1 -1
- data/spec/spec_helper.rb +0 -1
- data/spec/tasks_spec.rb +20 -6
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0a1407bbf8b606b2623a052d52055df8cc7b36bb
|
|
4
|
+
data.tar.gz: 81a5347837440d5955545f6fc3f74bc6b1e69ffe
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f06468179a1d516d756972e6eae955ffa1d340284b415e2bd588950cd42eb7db164b2a9edb9e81a2d69fbb5029490947991bd58dc17e41009866e410aa25a8f9
|
|
7
|
+
data.tar.gz: c193cbf26a18f3d8b1a73591cb95dd85b4bb31340d3db76790955e5ccdb7a603b9ebf7aee6e5b1eb5d9566aade7a2c567fc7ce7bfe0d0c348b593ec5bf1e3ba5
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
|
@@ -58,9 +58,9 @@ Optionally, override the other slack settings:
|
|
|
58
58
|
set :slack_run_starting, ->{ true }
|
|
59
59
|
set :slack_run_finished, ->{ true }
|
|
60
60
|
set :slack_run_failed, ->{ true }
|
|
61
|
-
set :slack_msg_starting, ->{ "#{ENV['USER'] || ENV['USERNAME']} has started deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :rails_env, 'production'}
|
|
62
|
-
set :slack_msg_finished, ->{ "#{ENV['USER'] || ENV['USERNAME']} has finished deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :rails_env, 'production'}
|
|
63
|
-
set :slack_msg_failed, ->{ "
|
|
61
|
+
set :slack_msg_starting, ->{ "#{ENV['USER'] || ENV['USERNAME']} has started deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :rails_env, 'production'}" }
|
|
62
|
+
set :slack_msg_finished, ->{ "#{ENV['USER'] || ENV['USERNAME']} has finished deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :rails_env, 'production'}" }
|
|
63
|
+
set :slack_msg_failed, ->{ "#{ENV['USER'] || ENV['USERNAME']} failed to deploy branch #{fetch :branch} of #{fetch :application} to #{fetch :rails_env, 'production'}" }
|
|
64
64
|
|
|
65
65
|
**Note**: You may wish to disable one of the notifications if another service (ex:
|
|
66
66
|
Honeybadger) also displays a deploy notification.
|
|
@@ -15,7 +15,9 @@ namespace :slack do
|
|
|
15
15
|
username: fetch(:slack_username),
|
|
16
16
|
icon_url: fetch(:slack_icon_url),
|
|
17
17
|
icon_emoji: fetch(:slack_icon_emoji),
|
|
18
|
-
|
|
18
|
+
attachments: [{
|
|
19
|
+
text: fetch(:slack_msg_starting)
|
|
20
|
+
}]
|
|
19
21
|
}
|
|
20
22
|
)
|
|
21
23
|
end
|
|
@@ -35,7 +37,10 @@ namespace :slack do
|
|
|
35
37
|
username: fetch(:slack_username),
|
|
36
38
|
icon_url: fetch(:slack_icon_url),
|
|
37
39
|
icon_emoji: fetch(:slack_icon_emoji),
|
|
38
|
-
|
|
40
|
+
attachments: [{
|
|
41
|
+
color: 'good',
|
|
42
|
+
text: fetch(:slack_msg_finished)
|
|
43
|
+
}]
|
|
39
44
|
}
|
|
40
45
|
)
|
|
41
46
|
end
|
|
@@ -55,7 +60,10 @@ namespace :slack do
|
|
|
55
60
|
username: fetch(:slack_username),
|
|
56
61
|
icon_url: fetch(:slack_icon_url),
|
|
57
62
|
icon_emoji: fetch(:slack_icon_emoji),
|
|
58
|
-
|
|
63
|
+
attachments: [{
|
|
64
|
+
color: 'danger',
|
|
65
|
+
text: fetch(:slack_msg_failed)
|
|
66
|
+
}]
|
|
59
67
|
}
|
|
60
68
|
)
|
|
61
69
|
end
|
|
@@ -84,8 +92,8 @@ namespace :load do
|
|
|
84
92
|
set :slack_run_starting, ->{ true } # Set to false to disable starting message.
|
|
85
93
|
set :slack_run_finished, ->{ true } # Set to false to disable finished message.
|
|
86
94
|
set :slack_run_failed, ->{ true } # Set to false to disable failure message.
|
|
87
|
-
set :slack_msg_starting, ->{ "#{ENV['USER'] || ENV['USERNAME']} has started deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'an unknown stage'}
|
|
88
|
-
set :slack_msg_finished, ->{ "#{ENV['USER'] || ENV['USERNAME']} has finished deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'an unknown stage'}
|
|
89
|
-
set :slack_msg_failed, ->{ "
|
|
95
|
+
set :slack_msg_starting, ->{ "#{ENV['USER'] || ENV['USERNAME']} has started deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'an unknown stage'}" }
|
|
96
|
+
set :slack_msg_finished, ->{ "#{ENV['USER'] || ENV['USERNAME']} has finished deploying branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'an unknown stage'}" }
|
|
97
|
+
set :slack_msg_failed, ->{ "#{ENV['USER'] || ENV['USERNAME']} failed to deploy branch #{fetch :branch} of #{fetch :application} to #{fetch :stage, 'an unknown stage'}" }
|
|
90
98
|
end
|
|
91
99
|
end
|
data/lib/slackistrano/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
data/spec/tasks_spec.rb
CHANGED
|
@@ -23,8 +23,7 @@ describe Slackistrano do
|
|
|
23
23
|
Rake::Task['deploy:failed'].execute
|
|
24
24
|
end
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
shared_examples_for "slack notification" do |stage, color = nil|
|
|
28
27
|
it "posts to slack on slack:deploy:#{stage}" do
|
|
29
28
|
set "slack_run_#{stage}".to_sym, ->{ true }
|
|
30
29
|
expect(Slackistrano).to receive :post
|
|
@@ -38,14 +37,18 @@ describe Slackistrano do
|
|
|
38
37
|
end
|
|
39
38
|
|
|
40
39
|
it "calls Slackistrano.post with all the right arguments on slack:deploy:#{stage}" do
|
|
41
|
-
set "slack_run_#{stage}"
|
|
40
|
+
set :"slack_run_#{stage}", ->{ true }
|
|
42
41
|
set :slack_team, ->{ 'team' }
|
|
43
42
|
set :slack_token, ->{ 'token' }
|
|
44
43
|
set :slack_webhook, ->{ 'webhook' }
|
|
45
44
|
set :slack_channel, ->{ 'channel' }
|
|
46
45
|
set :slack_icon_url, ->{ 'http://icon.url' }
|
|
47
46
|
set :slack_icon_emoji, ->{ ':emoji:' }
|
|
48
|
-
set "slack_msg_#{stage}"
|
|
47
|
+
set :"slack_msg_#{stage}", ->{ 'text message' }
|
|
48
|
+
|
|
49
|
+
attachment = {text: 'text message'}
|
|
50
|
+
attachment[:color] = color unless color.nil?
|
|
51
|
+
|
|
49
52
|
expect(Slackistrano).to receive(:post).with(
|
|
50
53
|
team: 'team',
|
|
51
54
|
token: 'token',
|
|
@@ -56,11 +59,22 @@ describe Slackistrano do
|
|
|
56
59
|
username: 'Slackistrano',
|
|
57
60
|
icon_url: 'http://icon.url',
|
|
58
61
|
icon_emoji: ':emoji:',
|
|
59
|
-
|
|
62
|
+
attachments: [attachment]
|
|
60
63
|
}
|
|
61
64
|
)
|
|
62
65
|
Rake::Task["slack:deploy:#{stage}"].execute
|
|
63
66
|
end
|
|
64
|
-
end
|
|
67
|
+
end
|
|
65
68
|
|
|
69
|
+
describe 'build is starting' do
|
|
70
|
+
it_should_behave_like "slack notification", :starting
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
describe 'build has finished' do
|
|
74
|
+
it_should_behave_like "slack notification", :finished, 'good'
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
describe 'build has failed' do
|
|
78
|
+
it_should_behave_like "slack notification", :failed, 'danger'
|
|
79
|
+
end
|
|
66
80
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: slackistrano
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Philip Hallstrom
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-
|
|
11
|
+
date: 2015-03-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: capistrano
|