mms-api 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -1
- data/bin/mms-api +8 -3
- data/lib/mms/agent.rb +8 -0
- data/lib/mms/resource/group.rb +8 -0
- data/lib/mms/resource/host.rb +42 -0
- data/lib/mms/version.rb +1 -1
- data/lib/mms.rb +1 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b9f237818d6e0c66e6511c157bbd76e0339c0a76
|
4
|
+
data.tar.gz: 8dd890ae570320a80c0bd084ca81a2c5c5af5900
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d4de5e93a356694501f7a7a6948e16243f967f84d50485cb58a425302425526b320d640baa604312c486e9d01e6e89644153d7855d74570c71b8fc6c3cbc1847
|
7
|
+
data.tar.gz: 2ff3507c8107f1811e440479d53259bda028a9150b3a135aa8d65c960cf861b6c97e1d0f21f1b6c8314978929d29497afcb4c279b007626cd78a20b837d88135
|
data/README.md
CHANGED
@@ -20,7 +20,7 @@ Usage:
|
|
20
20
|
|
21
21
|
Commands:
|
22
22
|
|
23
|
-
groups | clusters | snapshots | restorejobs | restorejobs-create
|
23
|
+
groups | hosts | clusters | snapshots | restorejobs | restorejobs-create
|
24
24
|
|
25
25
|
Options:
|
26
26
|
|
@@ -41,8 +41,10 @@ agent = MMS::Agent.new('username', 'apikey')
|
|
41
41
|
|
42
42
|
# all available resources
|
43
43
|
group_list = agent.groups
|
44
|
+
host_list = agent.hosts
|
44
45
|
cluster_list = agent.clusters
|
45
46
|
snapshot_list = agent.snapshots
|
47
|
+
job_list = agent.restorejobs
|
46
48
|
|
47
49
|
# get first cluster from list
|
48
50
|
cluster = cluster_list.first
|
data/bin/mms-api
CHANGED
@@ -7,7 +7,7 @@ require 'optparse'
|
|
7
7
|
require 'terminal-table'
|
8
8
|
require 'pp'
|
9
9
|
|
10
|
-
actions_available = ["groups", "clusters", "snapshots", "restorejobs", "restorejobs-create"]
|
10
|
+
actions_available = ["groups", "hosts", "clusters", "snapshots", "restorejobs", "restorejobs-create"]
|
11
11
|
|
12
12
|
app_name = 'mms-api'
|
13
13
|
app_dscr = "#{app_name} is a tool for accessing MMS API"
|
@@ -84,9 +84,14 @@ begin
|
|
84
84
|
rows = []
|
85
85
|
case action
|
86
86
|
when 'groups'
|
87
|
-
heading = ['Name', 'Active Agents', 'Replicas count', 'Shards count', 'Last Active Agent']
|
87
|
+
heading = ['Name', 'Active Agents', 'Replicas count', 'Shards count', 'Last Active Agent', 'GroupId']
|
88
88
|
results.each do |group|
|
89
|
-
rows << [group.name, group.active_agent_count, group.replicaset_count, group.shard_count, group.last_active_agent]
|
89
|
+
rows << [group.name, group.active_agent_count, group.replicaset_count, group.shard_count, group.last_active_agent, group.id]
|
90
|
+
end
|
91
|
+
when 'hosts'
|
92
|
+
heading = ['Group', 'Type', 'Hostname', 'IP', 'Port', 'Last ping', 'Alerts enabled', 'HostId']
|
93
|
+
results.each do |host|
|
94
|
+
rows << [host.group.name, host.type_name, host.name, host.ip_address, host.port, host.last_ping, host.alerts_enabled, host.id]
|
90
95
|
end
|
91
96
|
when 'clusters'
|
92
97
|
heading = ['Group', 'Cluster', 'Shard name', 'Replica name', 'Type', 'Last heartbeat']
|
data/lib/mms/agent.rb
CHANGED
data/lib/mms/resource/group.rb
CHANGED
@@ -12,6 +12,14 @@ module MMS
|
|
12
12
|
super id, data
|
13
13
|
end
|
14
14
|
|
15
|
+
def hosts(page = 1, limit = 1000)
|
16
|
+
host_list = []
|
17
|
+
MMS::Client.instance.get('/groups/' + @id + '/hosts?pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |host|
|
18
|
+
host_list.push MMS::Resource::Host.new(host['id'], host['groupId'], host)
|
19
|
+
end
|
20
|
+
host_list
|
21
|
+
end
|
22
|
+
|
15
23
|
def clusters(page = 1, limit = 1000)
|
16
24
|
cluster_list = []
|
17
25
|
MMS::Client.instance.get('/groups/' + @id + '/clusters?pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |cluster|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module MMS
|
2
|
+
|
3
|
+
class Resource::Host < Resource
|
4
|
+
|
5
|
+
attr_accessor :name
|
6
|
+
attr_accessor :group
|
7
|
+
attr_accessor :hostname
|
8
|
+
attr_accessor :port
|
9
|
+
attr_accessor :type_name
|
10
|
+
attr_accessor :last_ping
|
11
|
+
attr_accessor :ip_address
|
12
|
+
attr_accessor :version
|
13
|
+
attr_accessor :shard_name
|
14
|
+
attr_accessor :replicaset_name
|
15
|
+
attr_accessor :replica_state_name
|
16
|
+
attr_accessor :alerts_enabled
|
17
|
+
|
18
|
+
def initialize(id, group_id, data = nil)
|
19
|
+
@group = MMS::Resource::Group.new(group_id)
|
20
|
+
|
21
|
+
super id, data
|
22
|
+
end
|
23
|
+
|
24
|
+
def _load(id)
|
25
|
+
MMS::Client.instance.get '/groups/' + @group.id + '/hosts/' + id.to_s
|
26
|
+
end
|
27
|
+
|
28
|
+
def _from_hash(data)
|
29
|
+
@hostname = data['hostname']
|
30
|
+
@port = data['port']
|
31
|
+
@type_name = data['typeName']
|
32
|
+
@last_ping = data['lastPing']
|
33
|
+
@ip_address = data['ipAddress']
|
34
|
+
@version = data['version']
|
35
|
+
@shard_name = data['shardName']
|
36
|
+
@replicaset_name = data['replicaSetName']
|
37
|
+
@replica_state_name = data['replicaStateName']
|
38
|
+
@alerts_enabled = data['alertsEnabled']
|
39
|
+
@name = @hostname
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
data/lib/mms/version.rb
CHANGED
data/lib/mms.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mms-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cargo Media
|
@@ -85,6 +85,7 @@ files:
|
|
85
85
|
- lib/mms/resource.rb
|
86
86
|
- lib/mms/resource/cluster.rb
|
87
87
|
- lib/mms/resource/group.rb
|
88
|
+
- lib/mms/resource/host.rb
|
88
89
|
- lib/mms/resource/restore_job.rb
|
89
90
|
- lib/mms/resource/snapshot.rb
|
90
91
|
- lib/mms/version.rb
|