fog-oneandone 1.0
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 +7 -0
- data/.gitignore +36 -0
- data/CONTRIBUTING.md +276 -0
- data/CONTRIBUTORS.md +1 -0
- data/Gemfile +4 -0
- data/LICENSE.md +20 -0
- data/README.md +317 -0
- data/bin/fog +78 -0
- data/examples/example_app.rb +80 -0
- data/fog-oneandone.gemspec +22 -0
- data/gemfiles/Gemfile-edge +7 -0
- data/lib/fog-oneandone.rb +10 -0
- data/lib/oneandone/compute.rb +713 -0
- data/lib/oneandone/core.rb +11 -0
- data/lib/oneandone/models/compute/firewall.rb +128 -0
- data/lib/oneandone/models/compute/firewalls.rb +24 -0
- data/lib/oneandone/models/compute/image.rb +72 -0
- data/lib/oneandone/models/compute/images.rb +24 -0
- data/lib/oneandone/models/compute/load_balancer.rb +149 -0
- data/lib/oneandone/models/compute/load_balancers.rb +24 -0
- data/lib/oneandone/models/compute/monitoring_policies.rb +24 -0
- data/lib/oneandone/models/compute/monitoring_policy.rb +196 -0
- data/lib/oneandone/models/compute/private_network.rb +105 -0
- data/lib/oneandone/models/compute/private_networks.rb +24 -0
- data/lib/oneandone/models/compute/public_ip.rb +68 -0
- data/lib/oneandone/models/compute/public_ips.rb +24 -0
- data/lib/oneandone/models/compute/server.rb +434 -0
- data/lib/oneandone/models/compute/servers.rb +24 -0
- data/lib/oneandone/models/compute/shared_storage.rb +101 -0
- data/lib/oneandone/models/compute/shared_storages.rb +24 -0
- data/lib/oneandone/models/compute/vpn.rb +70 -0
- data/lib/oneandone/models/compute/vpns.rb +24 -0
- data/lib/oneandone/requests/compute/access.rb +35 -0
- data/lib/oneandone/requests/compute/add_firewall.rb +70 -0
- data/lib/oneandone/requests/compute/add_firewall_ips.rb +67 -0
- data/lib/oneandone/requests/compute/add_firewall_rules.rb +68 -0
- data/lib/oneandone/requests/compute/add_hdds.rb +65 -0
- data/lib/oneandone/requests/compute/add_load_balancer.rb +76 -0
- data/lib/oneandone/requests/compute/add_load_balancer_ips.rb +67 -0
- data/lib/oneandone/requests/compute/add_load_balancer_rules.rb +68 -0
- data/lib/oneandone/requests/compute/add_mp_servers.rb +64 -0
- data/lib/oneandone/requests/compute/add_ports.rb +65 -0
- data/lib/oneandone/requests/compute/add_private_network.rb +65 -0
- data/lib/oneandone/requests/compute/add_private_network_servers.rb +67 -0
- data/lib/oneandone/requests/compute/add_processes.rb +65 -0
- data/lib/oneandone/requests/compute/add_server_ip.rb +72 -0
- data/lib/oneandone/requests/compute/add_shared_storage_servers.rb +64 -0
- data/lib/oneandone/requests/compute/change_password.rb +45 -0
- data/lib/oneandone/requests/compute/change_status.rb +69 -0
- data/lib/oneandone/requests/compute/clone_server.rb +67 -0
- data/lib/oneandone/requests/compute/create_firewall.rb +78 -0
- data/lib/oneandone/requests/compute/create_image.rb +101 -0
- data/lib/oneandone/requests/compute/create_load_balancer.rb +104 -0
- data/lib/oneandone/requests/compute/create_monitoring_policy.rb +93 -0
- data/lib/oneandone/requests/compute/create_private_network.rb +82 -0
- data/lib/oneandone/requests/compute/create_public_ip.rb +77 -0
- data/lib/oneandone/requests/compute/create_server.rb +139 -0
- data/lib/oneandone/requests/compute/create_shared_storage.rb +83 -0
- data/lib/oneandone/requests/compute/create_snapshot.rb +51 -0
- data/lib/oneandone/requests/compute/create_vpn.rb +80 -0
- data/lib/oneandone/requests/compute/delete_firewall.rb +51 -0
- data/lib/oneandone/requests/compute/delete_firewall_rule.rb +60 -0
- data/lib/oneandone/requests/compute/delete_hdd.rb +61 -0
- data/lib/oneandone/requests/compute/delete_image.rb +51 -0
- data/lib/oneandone/requests/compute/delete_load_balancer.rb +51 -0
- data/lib/oneandone/requests/compute/delete_load_balancer_rule.rb +60 -0
- data/lib/oneandone/requests/compute/delete_monitoring_policy.rb +51 -0
- data/lib/oneandone/requests/compute/delete_port.rb +60 -0
- data/lib/oneandone/requests/compute/delete_private_network.rb +51 -0
- data/lib/oneandone/requests/compute/delete_process.rb +60 -0
- data/lib/oneandone/requests/compute/delete_public_ip.rb +51 -0
- data/lib/oneandone/requests/compute/delete_server.rb +51 -0
- data/lib/oneandone/requests/compute/delete_server_ip.rb +60 -0
- data/lib/oneandone/requests/compute/delete_shared_storage.rb +51 -0
- data/lib/oneandone/requests/compute/delete_snapshot.rb +51 -0
- data/lib/oneandone/requests/compute/delete_vpn.rb +51 -0
- data/lib/oneandone/requests/compute/eject_dvd.rb +51 -0
- data/lib/oneandone/requests/compute/get_datacenter.rb +50 -0
- data/lib/oneandone/requests/compute/get_dvd.rb +50 -0
- data/lib/oneandone/requests/compute/get_dvd_iso.rb +50 -0
- data/lib/oneandone/requests/compute/get_firewall.rb +50 -0
- data/lib/oneandone/requests/compute/get_firewall_ip.rb +59 -0
- data/lib/oneandone/requests/compute/get_firewall_rule.rb +59 -0
- data/lib/oneandone/requests/compute/get_fixed_server.rb +50 -0
- data/lib/oneandone/requests/compute/get_hardware.rb +50 -0
- data/lib/oneandone/requests/compute/get_hdd.rb +60 -0
- data/lib/oneandone/requests/compute/get_hdds.rb +50 -0
- data/lib/oneandone/requests/compute/get_image.rb +50 -0
- data/lib/oneandone/requests/compute/get_load_balancer.rb +50 -0
- data/lib/oneandone/requests/compute/get_load_balancer_ip.rb +59 -0
- data/lib/oneandone/requests/compute/get_load_balancer_rule.rb +59 -0
- data/lib/oneandone/requests/compute/get_log.rb +51 -0
- data/lib/oneandone/requests/compute/get_monitored_server.rb +49 -0
- data/lib/oneandone/requests/compute/get_monitoring_policy.rb +50 -0
- data/lib/oneandone/requests/compute/get_mp_server.rb +59 -0
- data/lib/oneandone/requests/compute/get_port.rb +59 -0
- data/lib/oneandone/requests/compute/get_private_network.rb +50 -0
- data/lib/oneandone/requests/compute/get_private_network_server.rb +59 -0
- data/lib/oneandone/requests/compute/get_process.rb +59 -0
- data/lib/oneandone/requests/compute/get_public_ip.rb +50 -0
- data/lib/oneandone/requests/compute/get_server.rb +50 -0
- data/lib/oneandone/requests/compute/get_server_appliance.rb +50 -0
- data/lib/oneandone/requests/compute/get_server_image.rb +50 -0
- data/lib/oneandone/requests/compute/get_server_ip.rb +59 -0
- data/lib/oneandone/requests/compute/get_server_private_network.rb +59 -0
- data/lib/oneandone/requests/compute/get_shared_storage.rb +50 -0
- data/lib/oneandone/requests/compute/get_shared_storage_server.rb +59 -0
- data/lib/oneandone/requests/compute/get_snapshot.rb +50 -0
- data/lib/oneandone/requests/compute/get_vpn.rb +50 -0
- data/lib/oneandone/requests/compute/install_server_image.rb +72 -0
- data/lib/oneandone/requests/compute/list_datacenters.rb +56 -0
- data/lib/oneandone/requests/compute/list_dvds.rb +56 -0
- data/lib/oneandone/requests/compute/list_firewall_ips.rb +50 -0
- data/lib/oneandone/requests/compute/list_firewall_rules.rb +50 -0
- data/lib/oneandone/requests/compute/list_firewalls.rb +56 -0
- data/lib/oneandone/requests/compute/list_fixed_servers.rb +40 -0
- data/lib/oneandone/requests/compute/list_images.rb +56 -0
- data/lib/oneandone/requests/compute/list_ip_firewalls.rb +59 -0
- data/lib/oneandone/requests/compute/list_ip_load_balancers.rb +59 -0
- data/lib/oneandone/requests/compute/list_load_balancer_ips.rb +50 -0
- data/lib/oneandone/requests/compute/list_load_balancer_rules.rb +50 -0
- data/lib/oneandone/requests/compute/list_load_balancers.rb +56 -0
- data/lib/oneandone/requests/compute/list_logs.rb +59 -0
- data/lib/oneandone/requests/compute/list_monitored_servers.rb +51 -0
- data/lib/oneandone/requests/compute/list_monitoring_policies.rb +56 -0
- data/lib/oneandone/requests/compute/list_mp_servers.rb +50 -0
- data/lib/oneandone/requests/compute/list_ports.rb +51 -0
- data/lib/oneandone/requests/compute/list_private_network_servers.rb +50 -0
- data/lib/oneandone/requests/compute/list_private_networks.rb +56 -0
- data/lib/oneandone/requests/compute/list_processes.rb +51 -0
- data/lib/oneandone/requests/compute/list_public_ips.rb +56 -0
- data/lib/oneandone/requests/compute/list_server_appliances.rb +56 -0
- data/lib/oneandone/requests/compute/list_server_ips.rb +50 -0
- data/lib/oneandone/requests/compute/list_server_private_networks.rb +50 -0
- data/lib/oneandone/requests/compute/list_servers.rb +56 -0
- data/lib/oneandone/requests/compute/list_shared_storage_servers.rb +50 -0
- data/lib/oneandone/requests/compute/list_shared_storages.rb +56 -0
- data/lib/oneandone/requests/compute/list_usages.rb +54 -0
- data/lib/oneandone/requests/compute/list_vpns.rb +56 -0
- data/lib/oneandone/requests/compute/load_dvd.rb +65 -0
- data/lib/oneandone/requests/compute/ping.rb +38 -0
- data/lib/oneandone/requests/compute/ping_auth.rb +38 -0
- data/lib/oneandone/requests/compute/remove_firewall.rb +60 -0
- data/lib/oneandone/requests/compute/remove_firewall_ip.rb +60 -0
- data/lib/oneandone/requests/compute/remove_load_balancer.rb +71 -0
- data/lib/oneandone/requests/compute/remove_load_balancer_ip.rb +60 -0
- data/lib/oneandone/requests/compute/remove_mp_server.rb +60 -0
- data/lib/oneandone/requests/compute/remove_private_network.rb +60 -0
- data/lib/oneandone/requests/compute/remove_private_network_server.rb +60 -0
- data/lib/oneandone/requests/compute/remove_shared_storage_server.rb +60 -0
- data/lib/oneandone/requests/compute/restore_snapshot.rb +35 -0
- data/lib/oneandone/requests/compute/status.rb +50 -0
- data/lib/oneandone/requests/compute/update_firewall.rb +76 -0
- data/lib/oneandone/requests/compute/update_hardware.rb +82 -0
- data/lib/oneandone/requests/compute/update_hdd.rb +71 -0
- data/lib/oneandone/requests/compute/update_image.rb +80 -0
- data/lib/oneandone/requests/compute/update_load_balancer.rb +96 -0
- data/lib/oneandone/requests/compute/update_monitoring_policy.rb +82 -0
- data/lib/oneandone/requests/compute/update_port.rb +74 -0
- data/lib/oneandone/requests/compute/update_private_network.rb +82 -0
- data/lib/oneandone/requests/compute/update_process.rb +76 -0
- data/lib/oneandone/requests/compute/update_public_ip.rb +71 -0
- data/lib/oneandone/requests/compute/update_server.rb +76 -0
- data/lib/oneandone/requests/compute/update_shared_storage.rb +80 -0
- data/lib/oneandone/requests/compute/update_vpn.rb +76 -0
- data/tests/oneandone/test_firewalls.rb +188 -0
- data/tests/oneandone/test_images.rb +79 -0
- data/tests/oneandone/test_load_balancers.rb +192 -0
- data/tests/oneandone/test_monitoring_policies.rb +342 -0
- data/tests/oneandone/test_private_networks.rb +123 -0
- data/tests/oneandone/test_public_ips.rb +75 -0
- data/tests/oneandone/test_servers.rb +465 -0
- data/tests/oneandone/test_shared_storages.rb +131 -0
- metadata +259 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
require_relative '../../lib/fog-oneandone'
|
|
2
|
+
require 'minitest/autorun'
|
|
3
|
+
|
|
4
|
+
Fog.mock!
|
|
5
|
+
|
|
6
|
+
class TestLoadBalancer < Minitest::Test
|
|
7
|
+
|
|
8
|
+
def self.test_order
|
|
9
|
+
:alpha
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
|
|
14
|
+
# Establish Connection
|
|
15
|
+
@compute = Fog::Compute::OneAndOne.new({
|
|
16
|
+
:oneandone_api_key => 'APIKEY'
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_a_create_load_balancer
|
|
23
|
+
|
|
24
|
+
# Perform Request
|
|
25
|
+
rule1 = {
|
|
26
|
+
'protocol' => 'TCP',
|
|
27
|
+
'port_balancer' => 80,
|
|
28
|
+
'port_server' => 80,
|
|
29
|
+
'source' => '0.0.0.0'
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
rules = [rule1]
|
|
33
|
+
|
|
34
|
+
response = @compute.create_load_balancer(name: 'Test LB',
|
|
35
|
+
description: 'Example Desc', health_check_test: 'TCP',
|
|
36
|
+
health_check_interval: 40, persistence: true, persistence_time: 1200,
|
|
37
|
+
method: 'ROUND_ROBIN', rules: rules)
|
|
38
|
+
|
|
39
|
+
@@load_balancer_id = response.body['id']
|
|
40
|
+
|
|
41
|
+
# Assertions
|
|
42
|
+
assert_equal response.body['name'], 'Test LB'
|
|
43
|
+
assert_equal response.body['description'], 'Example Desc'
|
|
44
|
+
assert_equal response.body['health_check_test'], 'TCP'
|
|
45
|
+
assert_equal response.body['health_check_interval'], 40
|
|
46
|
+
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def test_b_list_load_balancers
|
|
50
|
+
|
|
51
|
+
# Perform Request
|
|
52
|
+
response = @compute.list_load_balancers
|
|
53
|
+
|
|
54
|
+
# Assertions
|
|
55
|
+
assert_equal response.body.length, 1
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def test_c_update_load_balancer
|
|
60
|
+
|
|
61
|
+
# Perform Request
|
|
62
|
+
response = @compute.update_load_balancer(load_balancer_id: @@load_balancer_id,
|
|
63
|
+
name: 'New Name', description: 'New Desc')
|
|
64
|
+
|
|
65
|
+
# Assertions
|
|
66
|
+
assert_equal response.body['name'], 'New Name'
|
|
67
|
+
assert_equal response.body['description'], 'New Desc'
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def test_d_get_load_balancer
|
|
72
|
+
|
|
73
|
+
# Perform Request
|
|
74
|
+
response = @compute.get_load_balancer(@@load_balancer_id)
|
|
75
|
+
|
|
76
|
+
# Assertions
|
|
77
|
+
assert_equal response.body['id'], @@load_balancer_id
|
|
78
|
+
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def test_e_add_load_balancer_ips
|
|
82
|
+
|
|
83
|
+
# Perform Request
|
|
84
|
+
ip1 = '<IP-ID>'
|
|
85
|
+
|
|
86
|
+
ips = [ip1]
|
|
87
|
+
|
|
88
|
+
response = @compute.add_load_balancer_ips(load_balancer_id: @@load_balancer_id,
|
|
89
|
+
ips: ips)
|
|
90
|
+
|
|
91
|
+
# Assertions
|
|
92
|
+
assert_equal response.body['server_ips'][0], '<IP-ID>'
|
|
93
|
+
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
def test_f_list_load_balancer_ips
|
|
97
|
+
|
|
98
|
+
# Perform Request
|
|
99
|
+
response = @compute.list_load_balancer_ips(@@load_balancer_id)
|
|
100
|
+
|
|
101
|
+
# Assertions
|
|
102
|
+
assert_equal response.body.length, 1
|
|
103
|
+
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
def test_g_get_load_balancer_ip
|
|
107
|
+
|
|
108
|
+
# Perform Request
|
|
109
|
+
response = @compute.get_load_balancer_ip(load_balancer_id: @@load_balancer_id,
|
|
110
|
+
ip_id: '<IP-ID>')
|
|
111
|
+
|
|
112
|
+
# Assertions
|
|
113
|
+
assert_equal response.body, '<IP-ID>'
|
|
114
|
+
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
def test_h_remove_load_balancer_ip
|
|
118
|
+
|
|
119
|
+
# Perform Request
|
|
120
|
+
response = @compute.remove_load_balancer_ip(load_balancer_id: @@load_balancer_id,
|
|
121
|
+
ip_id: '<IP-ID>')
|
|
122
|
+
|
|
123
|
+
# Assertions
|
|
124
|
+
assert_equal response.body['server_ips'].length, 0
|
|
125
|
+
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
def test_i_add_load_balancer_rules
|
|
129
|
+
|
|
130
|
+
# Perform Request
|
|
131
|
+
rule2 = {
|
|
132
|
+
'protocol' => 'TCP',
|
|
133
|
+
'port_balancer' => 90,
|
|
134
|
+
'port_server' => 90,
|
|
135
|
+
'source' => '0.0.0.0'
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
rules = [rule2]
|
|
139
|
+
|
|
140
|
+
response = @compute.add_load_balancer_rules(load_balancer_id: @@load_balancer_id,
|
|
141
|
+
rules: rules)
|
|
142
|
+
|
|
143
|
+
@@rule2_id = response.body['rules'][1]['id']
|
|
144
|
+
|
|
145
|
+
# Assertions
|
|
146
|
+
assert_equal response.body['rules'][1]['port_balancer'], 90
|
|
147
|
+
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
def test_j_list_load_balancer_rules
|
|
151
|
+
|
|
152
|
+
# Perform Request
|
|
153
|
+
response = @compute.list_load_balancer_rules(@@load_balancer_id)
|
|
154
|
+
|
|
155
|
+
# Assertions
|
|
156
|
+
assert_equal response.body.length, 2
|
|
157
|
+
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
def test_k_get_load_balancer_rule
|
|
161
|
+
|
|
162
|
+
# Perform Request
|
|
163
|
+
response = @compute.get_load_balancer_rule(load_balancer_id: @@load_balancer_id,
|
|
164
|
+
rule_id: @@rule2_id)
|
|
165
|
+
|
|
166
|
+
# Assertions
|
|
167
|
+
assert_equal response.body['id'], @@rule2_id
|
|
168
|
+
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
def test_l_delete_load_balancer_rule
|
|
172
|
+
|
|
173
|
+
# Perform Request
|
|
174
|
+
response = @compute.delete_load_balancer_rule(load_balancer_id: @@load_balancer_id,
|
|
175
|
+
rule_id: @@rule2_id)
|
|
176
|
+
|
|
177
|
+
# Assertions
|
|
178
|
+
assert_equal response.body['rules'].length, 1
|
|
179
|
+
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
def test_m_delete_load_balancer
|
|
183
|
+
|
|
184
|
+
# Perform Request
|
|
185
|
+
response = @compute.delete_load_balancer(@@load_balancer_id)
|
|
186
|
+
|
|
187
|
+
# Assertions
|
|
188
|
+
assert_equal response.body, 'The requested load balancer has been deleted.'
|
|
189
|
+
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
end
|
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
require_relative '../../lib/fog-oneandone'
|
|
2
|
+
require 'minitest/autorun'
|
|
3
|
+
|
|
4
|
+
Fog.mock!
|
|
5
|
+
|
|
6
|
+
class TestMonitoringPolicy < Minitest::Test
|
|
7
|
+
|
|
8
|
+
def self.test_order
|
|
9
|
+
:alpha
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
|
|
14
|
+
# Establish Connection
|
|
15
|
+
@compute = Fog::Compute::OneAndOne.new({
|
|
16
|
+
:oneandone_api_key => 'APIKEY'
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_a_create_monitoring_policy
|
|
23
|
+
|
|
24
|
+
# Perform Request
|
|
25
|
+
thresholds = {
|
|
26
|
+
'cpu' => {
|
|
27
|
+
'warning' => {
|
|
28
|
+
'value' => 90,
|
|
29
|
+
'alert' => false
|
|
30
|
+
},
|
|
31
|
+
'critical' => {
|
|
32
|
+
'value' => 95,
|
|
33
|
+
'alert' => false
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
'ram' => {
|
|
37
|
+
'warning' => {
|
|
38
|
+
'value' => 90,
|
|
39
|
+
'alert' => false
|
|
40
|
+
},
|
|
41
|
+
'critical' => {
|
|
42
|
+
'value' => 95,
|
|
43
|
+
'alert' => false
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
'disk' => {
|
|
47
|
+
'warning' => {
|
|
48
|
+
'value' => 90,
|
|
49
|
+
'alert' => false
|
|
50
|
+
},
|
|
51
|
+
'critical' => {
|
|
52
|
+
'value' => 95,
|
|
53
|
+
'alert' => false
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
'transfer' => {
|
|
57
|
+
'warning' => {
|
|
58
|
+
'value' => 1000,
|
|
59
|
+
'alert' => false
|
|
60
|
+
},
|
|
61
|
+
'critical' => {
|
|
62
|
+
'value' => 2000,
|
|
63
|
+
'alert' => false
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
'internal_ping' => {
|
|
67
|
+
'warning' => {
|
|
68
|
+
'value' => 50,
|
|
69
|
+
'alert' => false
|
|
70
|
+
},
|
|
71
|
+
'critical' => {
|
|
72
|
+
'value' => 100,
|
|
73
|
+
'alert' => false
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
port1 = {
|
|
79
|
+
'protocol' => 'TCP',
|
|
80
|
+
'port' => 80,
|
|
81
|
+
'alert_if' => 'NOT_RESPONDING',
|
|
82
|
+
'email_notification' => true
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
ports = [port1]
|
|
86
|
+
|
|
87
|
+
process1 = {
|
|
88
|
+
'process' => 'test',
|
|
89
|
+
'alert_if' => 'NOT_RUNNING',
|
|
90
|
+
'email_notification' => true
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
processes = [process1]
|
|
94
|
+
|
|
95
|
+
response = @compute.create_monitoring_policy(name: 'Test Monitoring Policy',
|
|
96
|
+
email: 'test@example.com', agent: true, thresholds: thresholds,
|
|
97
|
+
ports: ports, processes: processes)
|
|
98
|
+
|
|
99
|
+
@@monitoring_policy_id = response.body['id']
|
|
100
|
+
|
|
101
|
+
# Assertions
|
|
102
|
+
assert_equal response.body['name'], 'Test Monitoring Policy'
|
|
103
|
+
assert_equal response.body['email'], 'test@example.com'
|
|
104
|
+
assert_equal response.body['agent'], true
|
|
105
|
+
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def test_b_list_monitoring_policies
|
|
109
|
+
|
|
110
|
+
# Perform Request
|
|
111
|
+
response = @compute.list_monitoring_policies
|
|
112
|
+
|
|
113
|
+
# Assertions
|
|
114
|
+
assert_equal response.body.length, 1
|
|
115
|
+
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
def test_c_update_monitoring_policy
|
|
119
|
+
|
|
120
|
+
# Perform Request
|
|
121
|
+
response = @compute.update_monitoring_policy(monitoring_policy_id: @@monitoring_policy_id,
|
|
122
|
+
name: 'New Name', description: 'New Desc', email: 'new@example.com')
|
|
123
|
+
|
|
124
|
+
# Assertions
|
|
125
|
+
assert_equal response.body['name'], 'New Name'
|
|
126
|
+
assert_equal response.body['description'], 'New Desc'
|
|
127
|
+
assert_equal response.body['email'], 'new@example.com'
|
|
128
|
+
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
def test_d_get_monitoring_policy
|
|
132
|
+
|
|
133
|
+
# Perform Request
|
|
134
|
+
response = @compute.get_monitoring_policy(@@monitoring_policy_id)
|
|
135
|
+
|
|
136
|
+
# Assertions
|
|
137
|
+
assert_equal response.body['id'], @@monitoring_policy_id
|
|
138
|
+
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def test_e_add_ports
|
|
142
|
+
|
|
143
|
+
# Perform Request
|
|
144
|
+
port2 = {
|
|
145
|
+
'protocol' => 'TCP',
|
|
146
|
+
'port' => 90,
|
|
147
|
+
'alert_if' => 'NOT_RESPONDING',
|
|
148
|
+
'email_notification' => true
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
ports = [port2]
|
|
152
|
+
|
|
153
|
+
response = @compute.add_ports(monitoring_policy_id: @@monitoring_policy_id,
|
|
154
|
+
ports: ports)
|
|
155
|
+
|
|
156
|
+
@@port2_id = response.body['ports'][1]['id']
|
|
157
|
+
|
|
158
|
+
# Assertions
|
|
159
|
+
assert_equal response.body['ports'].length, 2
|
|
160
|
+
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
def test_f_list_ports
|
|
164
|
+
|
|
165
|
+
# Perform Request
|
|
166
|
+
response = @compute.list_ports(@@monitoring_policy_id)
|
|
167
|
+
|
|
168
|
+
# Assertions
|
|
169
|
+
assert_equal response.body.length, 2
|
|
170
|
+
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
def test_g_get_port
|
|
174
|
+
|
|
175
|
+
# Perform Request
|
|
176
|
+
response = @compute.get_port(monitoring_policy_id: @@monitoring_policy_id,
|
|
177
|
+
port_id: @@port2_id)
|
|
178
|
+
|
|
179
|
+
# Assertions
|
|
180
|
+
assert_equal response.body['id'], @@port2_id
|
|
181
|
+
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
def test_h_update_port
|
|
185
|
+
|
|
186
|
+
# Perform Request
|
|
187
|
+
port = {
|
|
188
|
+
'protocol' => 'TCP',
|
|
189
|
+
'port' => 80,
|
|
190
|
+
'alert_if' => 'RESPONDING',
|
|
191
|
+
'email_notification' => false
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
response = @compute.update_port(monitoring_policy_id: @@monitoring_policy_id,
|
|
195
|
+
port_id: @@port2_id, new_port: port)
|
|
196
|
+
|
|
197
|
+
# Assertions
|
|
198
|
+
assert_equal response.body['ports'][1]['alert_if'], 'RESPONDING'
|
|
199
|
+
assert_equal response.body['ports'][1]['email_notification'], false
|
|
200
|
+
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
def test_i_delete_port
|
|
204
|
+
|
|
205
|
+
# Perform Request
|
|
206
|
+
response = @compute.delete_port(monitoring_policy_id: @@monitoring_policy_id,
|
|
207
|
+
port_id: @@port2_id)
|
|
208
|
+
|
|
209
|
+
# Assertions
|
|
210
|
+
assert_equal response.body['ports'].length, 1
|
|
211
|
+
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
def test_j_add_processes
|
|
215
|
+
|
|
216
|
+
# Perform Request
|
|
217
|
+
process2 = {
|
|
218
|
+
'process' => 'logger',
|
|
219
|
+
'alert_if' => 'NOT_RUNNING',
|
|
220
|
+
'email_notification' => true
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
processes = [process2]
|
|
224
|
+
|
|
225
|
+
response = @compute.add_processes(monitoring_policy_id: @@monitoring_policy_id,
|
|
226
|
+
processes: processes)
|
|
227
|
+
|
|
228
|
+
@@process2_id = response.body['processes'][1]['id']
|
|
229
|
+
|
|
230
|
+
# Assertions
|
|
231
|
+
assert_equal response.body['processes'].length, 2
|
|
232
|
+
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
def test_k_list_processes
|
|
236
|
+
|
|
237
|
+
# Perform Request
|
|
238
|
+
response = @compute.list_processes(@@monitoring_policy_id)
|
|
239
|
+
|
|
240
|
+
# Assertions
|
|
241
|
+
assert_equal response.body.length, 2
|
|
242
|
+
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
def test_l_get_process
|
|
246
|
+
|
|
247
|
+
# Perform Request
|
|
248
|
+
response = @compute.get_process(monitoring_policy_id: @@monitoring_policy_id,
|
|
249
|
+
process_id: @@process2_id)
|
|
250
|
+
|
|
251
|
+
# Assertions
|
|
252
|
+
assert_equal response.body['id'], @@process2_id
|
|
253
|
+
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
def test_m_update_process
|
|
257
|
+
|
|
258
|
+
# Perform Request
|
|
259
|
+
process = {
|
|
260
|
+
'process' => 'test',
|
|
261
|
+
'alert_if' => 'RUNNING',
|
|
262
|
+
'email_notification' => false
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
response = @compute.update_process(monitoring_policy_id: @@monitoring_policy_id,
|
|
266
|
+
process_id: @@process2_id, new_process: process)
|
|
267
|
+
|
|
268
|
+
# Assertions
|
|
269
|
+
assert_equal response.body['processes'][1]['alert_if'], 'RUNNING'
|
|
270
|
+
assert_equal response.body['processes'][1]['email_notification'], false
|
|
271
|
+
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
def test_n_delete_process
|
|
275
|
+
|
|
276
|
+
# Perform Request
|
|
277
|
+
response = @compute.delete_process(monitoring_policy_id: @@monitoring_policy_id,
|
|
278
|
+
process_id: @@process2_id)
|
|
279
|
+
|
|
280
|
+
# Assertions
|
|
281
|
+
assert_equal response.body['processes'].length, 1
|
|
282
|
+
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
def test_o_add_mp_servers
|
|
286
|
+
|
|
287
|
+
# Perform Request
|
|
288
|
+
server1 = '<SERVER-ID>'
|
|
289
|
+
|
|
290
|
+
servers = [server1]
|
|
291
|
+
|
|
292
|
+
response = @compute.add_mp_servers(monitoring_policy_id: @@monitoring_policy_id,
|
|
293
|
+
servers: servers)
|
|
294
|
+
|
|
295
|
+
# Assertions
|
|
296
|
+
assert_equal response.body['servers'][0], '<SERVER-ID>'
|
|
297
|
+
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
def test_p_list_mp_servers
|
|
301
|
+
|
|
302
|
+
# Perform Request
|
|
303
|
+
response = @compute.list_mp_servers(@@monitoring_policy_id)
|
|
304
|
+
|
|
305
|
+
# Assertions
|
|
306
|
+
assert_equal response.body.length, 1
|
|
307
|
+
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
def test_q_get_mp_server
|
|
311
|
+
|
|
312
|
+
# Perform Request
|
|
313
|
+
response = @compute.get_mp_server(monitoring_policy_id: @@monitoring_policy_id,
|
|
314
|
+
server_id: '<SERVER-ID>')
|
|
315
|
+
|
|
316
|
+
# Assertions
|
|
317
|
+
assert_equal response.body, '<SERVER-ID>'
|
|
318
|
+
|
|
319
|
+
end
|
|
320
|
+
|
|
321
|
+
def test_r_remove_mp_server
|
|
322
|
+
|
|
323
|
+
# Perform Request
|
|
324
|
+
response = @compute.remove_mp_server(monitoring_policy_id: @@monitoring_policy_id,
|
|
325
|
+
server_id: '<SERVER-ID>')
|
|
326
|
+
|
|
327
|
+
# Assertions
|
|
328
|
+
assert_equal response.body['servers'].length, 0
|
|
329
|
+
|
|
330
|
+
end
|
|
331
|
+
|
|
332
|
+
def test_s_delete_monitoring_policy
|
|
333
|
+
|
|
334
|
+
# Perform Request
|
|
335
|
+
response = @compute.delete_monitoring_policy(@@monitoring_policy_id)
|
|
336
|
+
|
|
337
|
+
# Assertions
|
|
338
|
+
assert_equal response.body, 'The requested monitoring policy has been deleted.'
|
|
339
|
+
|
|
340
|
+
end
|
|
341
|
+
|
|
342
|
+
end
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
require_relative '../../lib/fog-oneandone'
|
|
2
|
+
require 'minitest/autorun'
|
|
3
|
+
|
|
4
|
+
Fog.mock!
|
|
5
|
+
|
|
6
|
+
class TestPrivateNetwork < Minitest::Test
|
|
7
|
+
|
|
8
|
+
def self.test_order
|
|
9
|
+
:alpha
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
|
|
14
|
+
# Establish Connection
|
|
15
|
+
@compute = Fog::Compute::OneAndOne.new({
|
|
16
|
+
:oneandone_api_key => 'APIKEY'
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_a_create_private_network
|
|
23
|
+
|
|
24
|
+
# Perform Request
|
|
25
|
+
response = @compute.create_private_network(name: 'Test Private Network')
|
|
26
|
+
|
|
27
|
+
@@private_network_id = response.body['id']
|
|
28
|
+
|
|
29
|
+
# Assertions
|
|
30
|
+
assert_equal response.body['name'], 'Test Private Network'
|
|
31
|
+
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def test_b_list_private_networks
|
|
35
|
+
|
|
36
|
+
# Perform Request
|
|
37
|
+
response = @compute.list_private_networks
|
|
38
|
+
|
|
39
|
+
# Assertions
|
|
40
|
+
assert_equal response.body.length, 1
|
|
41
|
+
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def test_c_update_private_network
|
|
45
|
+
|
|
46
|
+
# Perform Request
|
|
47
|
+
response = @compute.update_private_network(private_network_id: @@private_network_id,
|
|
48
|
+
name: 'New Name', description: 'New Desc')
|
|
49
|
+
|
|
50
|
+
# Assertions
|
|
51
|
+
assert_equal response.body['name'], 'New Name'
|
|
52
|
+
assert_equal response.body['description'], 'New Desc'
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def test_d_get_private_network
|
|
57
|
+
|
|
58
|
+
# Perform Request
|
|
59
|
+
response = @compute.get_private_network(@@private_network_id)
|
|
60
|
+
|
|
61
|
+
# Assertions
|
|
62
|
+
assert_equal response.body['id'], @@private_network_id
|
|
63
|
+
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def test_e_add_private_network_servers
|
|
67
|
+
|
|
68
|
+
# Perform Request
|
|
69
|
+
server1 = '<SERVER-ID>'
|
|
70
|
+
|
|
71
|
+
servers = [server1]
|
|
72
|
+
|
|
73
|
+
response = @compute.add_private_network_servers(private_network_id: @@private_network_id,
|
|
74
|
+
servers: servers)
|
|
75
|
+
|
|
76
|
+
# Assertions
|
|
77
|
+
assert_equal response.body['servers'][0], '<SERVER-ID>'
|
|
78
|
+
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def test_f_list_private_network_servers
|
|
82
|
+
|
|
83
|
+
# Perform Request
|
|
84
|
+
response = @compute.list_private_network_servers(@@private_network_id)
|
|
85
|
+
|
|
86
|
+
# Assertions
|
|
87
|
+
assert_equal response.body.length, 1
|
|
88
|
+
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
def test_g_get_private_network_server
|
|
92
|
+
|
|
93
|
+
# Perform Request
|
|
94
|
+
response = @compute.get_private_network_server(private_network_id: @@private_network_id,
|
|
95
|
+
server_id: '<SERVER-ID>')
|
|
96
|
+
|
|
97
|
+
# Assertions
|
|
98
|
+
assert_equal response.body, '<SERVER-ID>'
|
|
99
|
+
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
def test_h_remove_private_network_server
|
|
103
|
+
|
|
104
|
+
# Perform Request
|
|
105
|
+
response = @compute.remove_private_network_server(private_network_id: @@private_network_id,
|
|
106
|
+
server_id: '<SERVER-ID>')
|
|
107
|
+
|
|
108
|
+
# Assertions
|
|
109
|
+
assert_equal response.body['servers'].length, 0
|
|
110
|
+
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
def test_m_delete_private_network
|
|
114
|
+
|
|
115
|
+
# Perform Request
|
|
116
|
+
response = @compute.delete_private_network(@@private_network_id)
|
|
117
|
+
|
|
118
|
+
# Assertions
|
|
119
|
+
assert_equal response.body, 'The requested private network has been deleted.'
|
|
120
|
+
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
end
|