zabbixapi 2.2.0 → 2.2.1
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 +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
|
[](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:
|