lita-nagios 0.1.1 → 0.1.2

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: aebcf98f262d143c01d14c6578dc817ac99b289a
4
- data.tar.gz: 99449e4ffc1b4ce9b6410b0a437a206ab36e9f5a
3
+ metadata.gz: 88f8e45007a3d4f0268225a304e51588abcf42bd
4
+ data.tar.gz: 8483c8262be5092f99e957422c4a62e237d506b8
5
5
  SHA512:
6
- metadata.gz: c496d8326859e44b31ed05488497b39eaa2cd78d70251cea5680a9b61a4a156486112e493cdadc0241389f4c4d8f382b1b53cbda23d61bc70ffa1fab329b7613
7
- data.tar.gz: b1d490206425af2b14f804853ae484db65589947d28f208a9fd78cc5ad91b5e68f8751383689020f9b939d8edd62e3de81b2c786380d2d42dc1aa2ebb8959702
6
+ metadata.gz: 1d9af0f47043be5e55490aba6e1c64042424e6066c64f0b065651a4a0cfe463c0e873be66cddc1ae9771f12fd334924a401f8c6d464499b833258897e535b888
7
+ data.tar.gz: 73ab2c13d36eb3988bc62391a3cc2ea49c3bd1a1b476d57606b9d99d86b0fe1272bca372cc0b8401de4cf3a9126099ca6a1bc59f8a168520bfc445a45db5f57c
@@ -2,24 +2,22 @@ module Lita
2
2
  module Handlers
3
3
  class Nagios < Handler
4
4
 
5
- def self.default_config(config)
6
- config.default_room = nil
7
- config.cgi = nil
8
- config.user = nil
9
- config.pass = nil
10
- config.version = 3
11
- config.time_format = "iso8601"
12
- config.verify_ssl = true
13
- end
5
+ config :default_room
6
+ config :cgi, default: "http://nagios.example.com/cgi-bin/nagios3"
7
+ config :user, default: "nagiosuser"
8
+ config :pass, default: "nagiospass"
9
+ config :version, default: 3
10
+ config :time_format, default: "iso8601"
11
+ config :verify_ssl, default: true
14
12
 
15
13
  def initialize(robot)
16
14
  @site = NagiosHarder::Site.new(
17
- config.cgi,
18
- config.user,
19
- config.pass,
20
- config.version,
21
- config.time_format,
22
- config.verify_ssl
15
+ robot.config.handlers.nagios.cgi,
16
+ robot.config.handlers.nagios.user,
17
+ robot.config.handlers.nagios.pass,
18
+ robot.config.handlers.nagios.version,
19
+ robot.config.handlers.nagios.time_format,
20
+ robot.config.handlers.nagios.verify_ssl
23
21
  )
24
22
  super(robot)
25
23
  end
@@ -30,7 +28,7 @@ module Lita
30
28
 
31
29
  route /^nagios\s+(?<action>enable|disable)\s+notif(ication(s)?)?/, :toggle_notifications,
32
30
  command: true,
33
- restrict_to: ["admins"],
31
+ restrict_to: ["nagios_admins"],
34
32
  kwargs: {
35
33
  host: { short: "h" },
36
34
  service: { short: "s" }
@@ -52,7 +50,7 @@ module Lita
52
50
 
53
51
  route /^nagios\s+recheck/, :recheck,
54
52
  command: true,
55
- restrict_to: ["admins"],
53
+ restrict_to: ["nagios_admins"],
56
54
  kwargs: {
57
55
  host: { short: "h" },
58
56
  service: { short: "s" }
@@ -79,7 +77,7 @@ module Lita
79
77
 
80
78
  route /^nagios\s+ack(nowledge)?/, :acknowledge,
81
79
  command: true,
82
- restrict_to: ["admins"],
80
+ restrict_to: ["nagios_admins"],
83
81
  kwargs: {
84
82
  host: { short: "h" },
85
83
  service: { short: "s" },
@@ -110,7 +108,7 @@ module Lita
110
108
 
111
109
  route /^nagios(\s+(?<type>fixed|flexible))?\s+downtime/, :schedule_downtime,
112
110
  command: true,
113
- restrict_to: ["admins"],
111
+ restrict_to: ["nagios_admins"],
114
112
  kwargs: {
115
113
  host: { short: "h" },
116
114
  service: { short: "s" },
data/lita-nagios.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = "lita-nagios"
3
- spec.version = "0.1.1"
3
+ spec.version = "0.1.2"
4
4
  spec.authors = ["Jonathan Amiez"]
5
5
  spec.email = ["jonathan.amiez@gmail.com"]
6
6
  spec.description = "Nagios interaction with Lita"
@@ -14,13 +14,13 @@ Gem::Specification.new do |spec|
14
14
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
15
  spec.require_paths = ["lib"]
16
16
 
17
- spec.add_runtime_dependency "lita", ">= 3.2"
17
+ spec.add_runtime_dependency "lita", "~> 4.0"
18
18
  spec.add_runtime_dependency "lita-keyword-arguments"
19
19
  spec.add_runtime_dependency "nagiosharder", ">= 0.5.0"
20
20
 
21
21
  spec.add_development_dependency "bundler", "~> 1.3"
22
22
  spec.add_development_dependency "rake", "~> 0"
23
- spec.add_development_dependency "rspec", "~> 2.14"
23
+ spec.add_development_dependency "rspec", ">= 3.0.0.beta2"
24
24
  spec.add_development_dependency "simplecov"
25
25
  spec.add_development_dependency "coveralls"
26
26
  end
@@ -1,4 +1,18 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe Lita::Handlers::Nagios, lita_handler: true do
4
+ it { is_expected.to route_http(:post, "/nagios/notifications").to(:receive) }
5
+ it { is_expected.to route_command("nagios enable notif -h par-db4").with_authorization_for(:nagios_admins).to(:toggle_notifications) }
6
+ it { is_expected.to route_command("nagios enable notif -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:toggle_notifications) }
7
+ it { is_expected.to route_command("nagios disable notification -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:toggle_notifications) }
8
+ it { is_expected.to route_command("nagios disable notifications -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:toggle_notifications) }
9
+
10
+ it { is_expected.to route_command("nagios recheck -h par-db4").with_authorization_for(:nagios_admins).to(:recheck) }
11
+ it { is_expected.to route_command("nagios recheck -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:recheck) }
12
+
13
+ it { is_expected.to route_command("nagios ack -h par-db4").with_authorization_for(:nagios_admins).to(:acknowledge) }
14
+ it { is_expected.to route_command("nagios ack -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:acknowledge) }
15
+
16
+ it { is_expected.to route_command("nagios fixed downtime -d 2h -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:schedule_downtime) }
17
+ it { is_expected.to route_command("nagios flexible downtime -d 2h -h par-db4 -s Load").with_authorization_for(:nagios_admins).to(:schedule_downtime) }
4
18
  end
data/spec/spec_helper.rb CHANGED
@@ -1,2 +1,11 @@
1
+ require "simplecov"
2
+ require "coveralls"
3
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
4
+ SimpleCov::Formatter::HTMLFormatter,
5
+ Coveralls::SimpleCov::Formatter
6
+ ]
7
+ SimpleCov.start { add_filter "/spec/" }
8
+
1
9
  require "lita-nagios"
2
10
  require "lita/rspec"
11
+ Lita.version_3_compatibility_mode = false
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lita-nagios
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Amiez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-26 00:00:00.000000000 Z
11
+ date: 2014-12-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lita
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.2'
19
+ version: '4.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '3.2'
26
+ version: '4.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: lita-keyword-arguments
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -84,16 +84,16 @@ dependencies:
84
84
  name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '2.14'
89
+ version: 3.0.0.beta2
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: '2.14'
96
+ version: 3.0.0.beta2
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: simplecov
99
99
  requirement: !ruby/object:Gem::Requirement