chef-handler-serf 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1a8af9e4bc554192319988cab6e9895c60405c89
4
- data.tar.gz: 1206048452b98061e6442e8f696273c2ce10d311
3
+ metadata.gz: 9d5b41042c4f3c6ede6b781564b67d2a410c4dfc
4
+ data.tar.gz: 988b3172a0250f218d8d24247c7e6c09ccd191cd
5
5
  SHA512:
6
- metadata.gz: bc65d14ebd4743082c21aa83dede9568b7a93190c3d5721740b872e26a0c640a4ff620b5442d7f5142959c990cb507274e3af7060b47109e2ec764b0c7ebf873
7
- data.tar.gz: f64286ca22f6c14060321a6023fdb70c325e70250405efdc2e1668017485a3ddc159f225df30f20cadc090ca166a0ffc9e9ac6c23e6fb1f93c18489e85fdb295
6
+ metadata.gz: beb7f255645031b5fe6282695900b2e836f94d0cf23a653c940f11162e1dcfcc3f76b8852e91e2e9e771bb4815d591fc0e039b7d245a2843461708c1bedf006b
7
+ data.tar.gz: 95277d4861962526efa6b291ce7b2cb6f4d75b767eee9ebdb7ef9220ae7f193a76d55b2ddde3ebbf27457cf6e30f6133973142e2d13f0a0b7be5cbb6c257bc48
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'chef-handler-serf'
7
- spec.version = '0.0.2'
7
+ spec.version = '0.0.3'
8
8
  spec.authors = ['Ranjib Dey']
9
9
  spec.email = ['ranjib@pagerduty.com']
10
10
  spec.summary = %q{Chef event handler for serf}
@@ -27,23 +27,28 @@ class Chef
27
27
  end
28
28
 
29
29
  def run_start(version)
30
- @conn.event(__method__.to_s, version)
30
+ payload = payload_to_json(version: version)
31
+ @conn.event(__method__.to_s, payload)
31
32
  end
32
33
 
33
34
  def converge_complete
34
- @conn.event(__method__.to_s)
35
+ @conn.event(__method__.to_s, payload_to_json)
35
36
  @conn.close unless @conn.closed?
36
37
  end
37
38
 
38
39
  def resource_updated(res, action)
39
40
  if @publish_all or @subscribe.include?(res.to_s) or res.publish
40
- payload = Chef::JSONCompat.to_json(
41
- resource: res.to_s,
42
- action: action.to_s
43
- )
41
+ payload = payload_to_json(resource: res.to_s, action: action.to_s)
44
42
  @conn.event(__method__.to_s, payload)
45
43
  end
46
44
  end
45
+
46
+ private
47
+ def payload_to_json(data = {})
48
+ Chef::JSONCompat.to_json(
49
+ data.merge(node: Chef::Config[:node_name])
50
+ )
51
+ end
47
52
  end
48
53
  end
49
54
  end
@@ -28,14 +28,21 @@ describe 'serf handler' do
28
28
 
29
29
  runner = Chef::Runner.new(rc)
30
30
 
31
- expect(conn).to receive(:event).with(
32
- 'resource_updated',
33
- '{"resource":"execute[pass]","action":"run"}'
31
+ pass_payload = Chef::JSONCompat.to_json(
32
+ resource: 'execute[pass]',
33
+ action: 'run',
34
+ node: Chef::Config[:node_name]
34
35
  )
35
- expect(conn).to_not receive(:event).with(
36
- 'resource_updated',
37
- '{"resource":"execute[fail]","action":"run"}'
36
+
37
+ fail_payload = Chef::JSONCompat.to_json(
38
+ resource: 'execute[fail]',
39
+ action: 'run',
40
+ node: Chef::Config[:node_name]
38
41
  )
42
+
43
+ expect(conn).to receive(:event).with('resource_updated', pass_payload)
44
+ expect(conn).to_not receive(:event).with('resource_updated', fail_payload)
39
45
  runner.converge
40
46
  end
41
47
  end
48
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-handler-serf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ranjib Dey
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-02 00:00:00.000000000 Z
11
+ date: 2014-07-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef