samson_hipchat 0.0.4 → 0.0.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 45bb274aa095f6b2a5b740c8d619bcb867a0465f
4
- data.tar.gz: 2329e861b24b294ebc01b5c044aa815aa13fcae3
3
+ metadata.gz: 5dde8617b79688e447d24772d04c4636257074a7
4
+ data.tar.gz: 54c8e367ee9a185ee3a195af3aff827558a8a097
5
5
  SHA512:
6
- metadata.gz: 273cab850c46492f71dedaa06c118da187ddc5b79facccf97bea99bb655e448cddab5fd2ebcde118a80af024dba5f3dc28ca7fe1f391b29ef0ff12fc095fbf3a
7
- data.tar.gz: 5c2a5b8b30bbdba6cd87aa1c77ad2adb2285b0c8c077f9f132051298e76e004c03cc4ac2ad07c11731e75ec19f586d3075d87793a042c2c6b08d4a8a743e9eaf
6
+ metadata.gz: 7d4b4f361f3a33e2273a116fd5be3b458d03208a1ce1ce250801295bc69f07cb27523ec433da1ab019dda773e4ebcf53093818f6659b20d80ce8f0d04b0820cb
7
+ data.tar.gz: 487fa2af69ba5a66e2bb79913a4a16f58164bb4aa4fcfb396a9823c7d64161254267039538e779a09ea8c8575bfa8841494df7db6c82fe5d46dd17570c103170
@@ -22,12 +22,14 @@ Stage.class_eval do
22
22
  def update_room_id
23
23
  if room_for(room_name)
24
24
  self.hipchat_rooms.first.room_id = room_for(room_name)['id']
25
+ else
26
+ self.hipchat_rooms.first.room_id = nil
25
27
  end
26
28
  end
27
29
 
28
30
  def room_exists?
29
31
  if room_name
30
- errors.add(:hipchat_rooms_name, "was not found. Create the room first.") unless room_for(room_name)
32
+ errors.add(:hipchat_rooms_name, "was not found. Create the room first. If this is a notification token, you can ignore this message") unless room_for(room_name)
31
33
  end
32
34
  end
33
35
 
@@ -42,7 +44,7 @@ Stage.class_eval do
42
44
  Rails.cache.fetch(hipchat_rooms_cache_key, expires_in: 5.minutes) do
43
45
  begin
44
46
  hipchat[name].get_room
45
- rescue HipChat::UnknownRoom
47
+ rescue HipChat::UnknownRoom, HipChat::UnknownResponseCode
46
48
  nil
47
49
  end
48
50
  end
@@ -1,12 +1,11 @@
1
1
  <%= subject %>
2
+ <p>&nbsp;&nbsp;<%= deploy.message %> </p>
2
3
  <% if changeset.commits.count == 0 %>
3
4
  There are no new commits since last time.
4
5
  <% else %>
5
6
  <%= pluralize changeset.commits.count, "commit" %> by <%= changeset.author_names.to_sentence %>.
6
7
  <br>
7
8
 
8
- <%= deploy.message %>
9
-
10
9
  <% if false %>
11
10
  <strong>Files changed:</strong>
12
11
  <ul>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: samson_hipchat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vinh Nguyen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-16 00:00:00.000000000 Z
11
+ date: 2015-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hipchat
@@ -39,11 +39,6 @@ files:
39
39
  - config/initializers/hipchat.rb
40
40
  - db/migrate/20150519105221_create_hipchat_rooms.rb
41
41
  - lib/samson_hipchat/samson_plugin.rb
42
- - samson_hipchat.gemspec
43
- - test/models/hipchat_notification_renderer_test.rb
44
- - test/models/hipchat_notification_test.rb
45
- - test/models/hooks_test.rb
46
- - test/test_helper.rb
47
42
  homepage:
48
43
  licenses: []
49
44
  metadata: {}
@@ -63,7 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
58
  version: '0'
64
59
  requirements: []
65
60
  rubyforge_project:
66
- rubygems_version: 2.4.7
61
+ rubygems_version: 2.4.6
67
62
  signing_key:
68
63
  specification_version: 4
69
64
  summary: Samson hipchat integration
@@ -1,7 +0,0 @@
1
- Gem::Specification.new "samson_hipchat", "0.0.4" do |s|
2
- s.summary = "Samson hipchat integration"
3
- s.authors = ["Vinh Nguyen"]
4
- s.email = "vinh@listia.com"
5
- s.add_runtime_dependency "hipchat", "~> 1.5"
6
- s.files = `git ls-files`.split("\n")
7
- end
@@ -1,42 +0,0 @@
1
- require_relative '../test_helper'
2
-
3
- describe HipchatNotificationRenderer do
4
- describe "starting" do
5
- it "renders a nicely formatted notification" do
6
- changeset = stub("changeset")
7
- deploy = stub("deploy", short_reference: "xyz", changeset: changeset)
8
-
9
- author1 = "author1"
10
- author2 = "author2"
11
- changeset.stubs(:author_names).returns([author1, author2])
12
-
13
- commit1 = stub("commit1", url: "#", author_name: "author1", summary: "Introduce bug")
14
- commit2 = stub("commit2", url: "#", author_name: "author2", summary: "Fix bug")
15
- changeset.stubs(:commits).returns([commit1, commit2])
16
-
17
- file1 = stub("file1", status: "added", filename: "foo.rb")
18
- file2 = stub("file2", status: "modified", filename: "bar.rb")
19
- changeset.stubs(:files).returns([file1, file2])
20
-
21
- subject = "Deploy starting"
22
-
23
- result = HipchatNotificationRenderer.render(deploy, subject)
24
-
25
- result.must_equal <<-RESULT.strip_heredoc.chomp
26
- Deploy starting
27
- 2 commits by author1 and author2.
28
- <br>
29
- <strong>Files changed:</strong>
30
- <ul>
31
- <li>A foo.rb</li>
32
- <li>M bar.rb</li>
33
- </ul>
34
- <strong>Commits:</strong>
35
- <ol>
36
- <li><a href='#'>(author1)</a>: Introduce bug</li>
37
- <li><a href='#'>(author2)</a>: Fix bug</li>
38
- <ol>
39
- RESULT
40
- end
41
- end
42
- end
@@ -1,47 +0,0 @@
1
- require_relative '../test_helper'
2
-
3
- describe HipchatNotification do
4
- let(:project) { stub(name: "Glitter") }
5
- let(:user) { stub(name: "John Wu", email: "wu@rocks.com") }
6
- let(:stage) { stub(name: "staging", hipchat_rooms: [stub(name: "x123yx", token: "token123")], project: project) }
7
- let(:hipchat_message) { stub(content: "hello world!", style: {color: :red}, subject: "subject") }
8
- let(:previous_deploy) { stub(summary: "hello world!", user: user, stage: stage) }
9
- let(:deploy) { stub(summary: "hello world!", user: user, stage: stage, changeset: "changeset") }
10
- let(:notification) { HipchatNotification.new(deploy) }
11
- let(:endpoint) { "https://api.hipchat.com/v2/room/x123yx/notification?auth_token=token123" }
12
-
13
- before do
14
- HipchatNotificationRenderer.stubs(:render).returns("foo")
15
- HipchatNotification::Message.any_instance.stubs(:content).returns("message to send")
16
- HipchatNotification::Message.any_instance.stubs(:from).returns("Deployer")
17
- HipchatNotification::Message.any_instance.stubs(:style).returns({color: :red})
18
- end
19
-
20
- it "notifies hipchat channels configured for the stage" do
21
- delivery = stub_request(:post, endpoint)
22
- notification.deliver
23
-
24
- assert_requested delivery
25
- end
26
-
27
- it "renders a nicely formatted notification" do
28
- stub_request(:post, endpoint)
29
- HipchatNotificationRenderer.stubs(:render).returns("bar")
30
- notification.deliver
31
-
32
- content, format, from, color = nil
33
- assert_requested :post, endpoint do |request|
34
- body = JSON.parse(request.body)
35
- puts body["message"]
36
- content = body.fetch("message")
37
- format = body.fetch("message_format")
38
- from = body.fetch("from")
39
- color = body.fetch("color")
40
- content.must_equal "message to send"
41
- format.must_equal "html"
42
- from.must_equal "Deployer"
43
- color.must_equal "red"
44
- end
45
- end
46
-
47
- end
@@ -1,32 +0,0 @@
1
- require_relative '../test_helper'
2
-
3
- describe "hipchat hooks" do
4
- let(:deploy) { deploys(:succeeded_test) }
5
- let(:stage) { deploy.stage }
6
-
7
- describe :before_deploy do
8
- it "sends notification on before hook" do
9
- stage.stubs(:send_hipchat_notifications?).returns(true)
10
- HipchatNotification.any_instance.expects(:deliver)
11
- Samson::Hooks.fire(:before_deploy, deploy, nil)
12
- end
13
-
14
- it "does not send notifications when disabled" do
15
- HipchatNotification.any_instance.expects(:deliver).never
16
- Samson::Hooks.fire(:before_deploy, deploy, nil)
17
- end
18
- end
19
-
20
- describe :after_deploy do
21
- it "sends notification on after hook" do
22
- stage.stubs(:send_hipchat_notifications?).returns(true)
23
- HipchatNotification.any_instance.expects(:deliver)
24
- Samson::Hooks.fire(:after_deploy, deploy, nil)
25
- end
26
-
27
- it "does not send notifications when disabled" do
28
- HipchatNotification.any_instance.expects(:deliver).never
29
- Samson::Hooks.fire(:after_deploy, deploy, nil)
30
- end
31
- end
32
- end
data/test/test_helper.rb DELETED
@@ -1 +0,0 @@
1
- require_relative '../../../test/test_helper'