zabbixapi 2.2.0 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +15 -8
- data/lib/zabbixapi/classes/usergroups.rb +17 -0
- data/lib/zabbixapi/classes/users.rb +1 -1
- data/lib/zabbixapi/client.rb +2 -2
- data/lib/zabbixapi/version.rb +1 -1
- data/spec/user.rb +3 -3
- data/spec/usergroup.rb +9 -0
- metadata +7 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 36996cc80617db9b2b099259078827cb00a79f92
|
4
|
+
data.tar.gz: eb15e6b0025ba2696e926f05c5d74dc8e3d1f9a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 921aebf75006230af71140ad7680e1c06293c8cfaf6de71bc50a33ad4b18dabab62ce79b276bab3658abd6fb95aef98c0eb2e63196c972d7e50ab79b70701605
|
7
|
+
data.tar.gz: d5fbf12cc9995d0b77227871a490b99ed7c001b9aa3bffad4093735b2f739deb6c690bd31a5a685c0180e100dfd283d9740ad122e9fb421db5e5706f88468dfc
|
data/README.md
CHANGED
@@ -1,21 +1,23 @@
|
|
1
|
-
#Ruby Zabbix Api Module
|
1
|
+
# Ruby Zabbix Api Module
|
2
2
|
|
3
3
|
Simple and lightweight ruby module for work with zabbix api
|
4
4
|
|
5
5
|
[![Build Status](https://travis-ci.org/express42/zabbixapi.png)](https://travis-ci.org/express42/zabbixapi)
|
6
6
|
|
7
|
-
#####Now works with all version of zabbix
|
7
|
+
##### Now works with all version of zabbix
|
8
8
|
* 1.8.2 (api version 1.2) /zabbixapi 0.6.x [branch zabbix1.8](https://github.com/express42/zabbixapi/tree/zabbix1.8)
|
9
9
|
* 1.8.9 (api version 1.3) /zabbixapi 0.6.x [branch zabbix1.8](https://github.com/express42/zabbixapi/tree/zabbix1.8)
|
10
|
-
* 2.0.x (api version 1.4 -> 2.0.10) /zabbixapi 2.0.x [branch
|
11
|
-
* 2.2.x (api version 2.2.x) /zabbixapi 2.2.x [
|
10
|
+
* 2.0.x (api version 1.4 -> 2.0.10) /zabbixapi 2.0.x [branch zabbix2.0](https://github.com/express42/zabbixapi/tree/zabbix2.0)
|
11
|
+
* 2.2.x (api version 2.2.x) /zabbixapi 2.2.x [master or branch zabbix2.2](https://github.com/express42/zabbixapi/tree/master)
|
12
|
+
|
13
|
+
Because Zabbix 2.2 is a main branch of Zabbix, so master of zabbixapi supports this version of zabbix.
|
12
14
|
|
13
15
|
## Version policy
|
14
16
|
|
15
17
|
Zabbixapi has next version policy:
|
16
18
|
* for zabbix 1.8.9 and below you should use zabbixapi 0.6.x
|
17
19
|
* for zabbix 2.0.x you should use zabbixapi 2.0.y
|
18
|
-
* for zabbix 2.2.x you should use zabbixapi 2.2.y
|
20
|
+
* for zabbix 2.2.x you should use zabbixapi 2.2.y
|
19
21
|
|
20
22
|
The PATCH (third digit) version of zabbixapi should not correspond to PATCH version of zabbix, for example
|
21
23
|
zabbixapi-2.0.x should works with all version of zabbix 2.0.y
|
@@ -71,16 +73,21 @@ zbx.applications.create(
|
|
71
73
|
### Create Item
|
72
74
|
```ruby
|
73
75
|
zbx.items.create(
|
76
|
+
:name => "item",
|
74
77
|
:description => "item",
|
75
78
|
:key_ => "proc.num[aaa]",
|
79
|
+
:type => 6,
|
80
|
+
:value_type => 6,
|
76
81
|
:hostid => zbx.templates.get_id(:host => "template"),
|
77
82
|
:applications => [zbx.applications.get_id(:name => "application")]
|
78
83
|
)
|
79
84
|
# or use (lib merge json):
|
80
85
|
zbx.items.create_or_update(
|
86
|
+
:name => "item",
|
81
87
|
:description => "item",
|
82
88
|
:key_ => "proc.num[aaa]",
|
83
89
|
:type => 6,
|
90
|
+
:value_type => 4,
|
84
91
|
:hostid => zbx.templates.get_id(:host => "template"),
|
85
92
|
:applications => [zbx.applications.get_id(:name => "application")]
|
86
93
|
)
|
@@ -243,7 +250,7 @@ zbx.users.create(
|
|
243
250
|
|
244
251
|
### Update user
|
245
252
|
```ruby
|
246
|
-
zbx.users.update(:userid => zbx.users.get_id(:
|
253
|
+
zbx.users.update(:userid => zbx.users.get_id(:alias => "user"), :name => "user2")
|
247
254
|
```
|
248
255
|
|
249
256
|
### Delete graph
|
@@ -279,7 +286,7 @@ zbx.screens.delete(
|
|
279
286
|
zbx.usergroups.get_or_create(:name => "Some user group")
|
280
287
|
zbx.usergroups.add_user(
|
281
288
|
:usrgrpids => [zbx.usergroups.get_id(:name => "Some user group")],
|
282
|
-
:userids => [zbx.users.get_id(:
|
289
|
+
:userids => [zbx.users.get_id(:alias => "user")]
|
283
290
|
)
|
284
291
|
# set write and read permissions for UserGroup on all hostgroups
|
285
292
|
zbx.usergroups.set_perm(
|
@@ -298,7 +305,7 @@ zbx.mediatypes.create_or_update(
|
|
298
305
|
:smtp_email => "zabbix@test.com"
|
299
306
|
)
|
300
307
|
zbx.users.add_medias(
|
301
|
-
:userids => [zbx.users.get_id(:
|
308
|
+
:userids => [zbx.users.get_id(:alias => "user")],
|
302
309
|
:media => [
|
303
310
|
{
|
304
311
|
:mediatypeid => zbx.mediatypes.get_id(:description => "mediatype"),
|
@@ -66,5 +66,22 @@ class ZabbixApi
|
|
66
66
|
result ? result['usrgrpids'][0].to_i : nil
|
67
67
|
end
|
68
68
|
|
69
|
+
# Update usergroup, modify users
|
70
|
+
#
|
71
|
+
# * *Args* :
|
72
|
+
# - +data+ -> Hash with :usrgrpids => id, :userids => []
|
73
|
+
# * *Returns* :
|
74
|
+
# - Integer
|
75
|
+
def update_users(data)
|
76
|
+
result = @client.api_request(
|
77
|
+
:method => "usergroup.massUpdate",
|
78
|
+
:params => {
|
79
|
+
:usrgrpids => data[:usrgrpids],
|
80
|
+
:userids => data[:userids]
|
81
|
+
}
|
82
|
+
)
|
83
|
+
result ? result['usrgrpids'][0].to_i : nil
|
84
|
+
end
|
85
|
+
|
69
86
|
end
|
70
87
|
end
|
data/lib/zabbixapi/client.rb
CHANGED
@@ -56,13 +56,13 @@ class ZabbixApi
|
|
56
56
|
unless @proxy_uri.nil?
|
57
57
|
http = Net::HTTP.Proxy(@proxy_host, @proxy_port, @proxy_user, @proxy_pass).new(uri.host, uri.port)
|
58
58
|
|
59
|
-
if uri.
|
59
|
+
if uri.scheme == 'https'
|
60
60
|
http.use_ssl = true
|
61
61
|
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
62
62
|
end
|
63
63
|
else
|
64
64
|
http = Net::HTTP.new(uri.host, uri.port)
|
65
|
-
if uri.
|
65
|
+
if uri.scheme == 'https'
|
66
66
|
http.use_ssl = true
|
67
67
|
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
68
68
|
end
|
data/lib/zabbixapi/version.rb
CHANGED
data/spec/user.rb
CHANGED
@@ -21,7 +21,7 @@ describe 'user' do
|
|
21
21
|
it "should return integer id" do
|
22
22
|
user = gen_name 'user'
|
23
23
|
userid = zbx.users.create(
|
24
|
-
:alias =>
|
24
|
+
:alias => user,
|
25
25
|
:name => user,
|
26
26
|
:surname => user,
|
27
27
|
:passwd => user,
|
@@ -33,7 +33,7 @@ describe 'user' do
|
|
33
33
|
|
34
34
|
describe 'get_id' do
|
35
35
|
it "should return nil" do
|
36
|
-
zbx.users.get_id(:
|
36
|
+
zbx.users.get_id(:alias => "name_____").should be_nil
|
37
37
|
end
|
38
38
|
end
|
39
39
|
end
|
@@ -63,7 +63,7 @@ describe 'user' do
|
|
63
63
|
|
64
64
|
describe 'get_full_data' do
|
65
65
|
it "should return string name" do
|
66
|
-
zbx.users.get_full_data(:
|
66
|
+
zbx.users.get_full_data(:alias => @user)[0]['name'].should be_kind_of(String)
|
67
67
|
end
|
68
68
|
end
|
69
69
|
|
data/spec/usergroup.rb
CHANGED
@@ -50,6 +50,15 @@ describe 'usergroup' do
|
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
|
+
describe 'update_users' do
|
54
|
+
it "should return id" do
|
55
|
+
zbx.usergroups.update_users(
|
56
|
+
:usrgrpids => [@usergroupid],
|
57
|
+
:userids => [@userid2]
|
58
|
+
).should eq @usergroupid
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
53
62
|
describe 'set_perms' do
|
54
63
|
it "should return id" do
|
55
64
|
zbx.usergroups.set_perms(
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zabbixapi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vasiliev D.V.
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-07-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
@@ -18,7 +18,7 @@ dependencies:
|
|
18
18
|
- - ~>
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '1.6'
|
21
|
-
- -
|
21
|
+
- - '>='
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: 1.6.0
|
24
24
|
type: :runtime
|
@@ -28,7 +28,7 @@ dependencies:
|
|
28
28
|
- - ~>
|
29
29
|
- !ruby/object:Gem::Version
|
30
30
|
version: '1.6'
|
31
|
-
- -
|
31
|
+
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 1.6.0
|
34
34
|
description: Allows you to work with zabbix api from ruby.
|
@@ -95,17 +95,17 @@ require_paths:
|
|
95
95
|
- lib
|
96
96
|
required_ruby_version: !ruby/object:Gem::Requirement
|
97
97
|
requirements:
|
98
|
-
- -
|
98
|
+
- - '>='
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '0'
|
101
101
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
|
-
- -
|
103
|
+
- - '>='
|
104
104
|
- !ruby/object:Gem::Version
|
105
105
|
version: '0'
|
106
106
|
requirements: []
|
107
107
|
rubyforge_project: zabbixapi
|
108
|
-
rubygems_version: 2.2.
|
108
|
+
rubygems_version: 2.2.2
|
109
109
|
signing_key:
|
110
110
|
specification_version: 4
|
111
111
|
summary: Realization for Zabbix API.
|
@@ -125,4 +125,3 @@ test_files:
|
|
125
125
|
- spec/trigger.rb
|
126
126
|
- spec/user.rb
|
127
127
|
- spec/usergroup.rb
|
128
|
-
has_rdoc:
|