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,49 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a monitoring server for a specified time range
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#monitoring_center__server_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_monitored_server(server_id: nil, period: 'LAST_24H',
|
|
12
|
+
start_date: nil, end_date: nil)
|
|
13
|
+
|
|
14
|
+
# Build hash for query parameters
|
|
15
|
+
keyword_args = {
|
|
16
|
+
:period => period,
|
|
17
|
+
:start_date => start_date,
|
|
18
|
+
:end_date => end_date
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
# Clean out null query parameters
|
|
22
|
+
query = clean_hash(keyword_args)
|
|
23
|
+
|
|
24
|
+
# Request
|
|
25
|
+
params = {
|
|
26
|
+
'method' => :get,
|
|
27
|
+
'endpoint' => "/monitoring_center/#{server_id}",
|
|
28
|
+
'params' => query
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
request(params)
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
end # Real
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class Mock
|
|
39
|
+
|
|
40
|
+
def get_monitored_server(server_id: nil, period: 'LAST24H',
|
|
41
|
+
start_date: nil, end_date: nil)
|
|
42
|
+
Fog::Mock.not_implemented
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
end # Mock
|
|
46
|
+
|
|
47
|
+
end # OneAndOne
|
|
48
|
+
end # Compute
|
|
49
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a monitoring policy
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#monitoring_policies__monitoring_policy_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_monitoring_policy(monitoring_policy_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/monitoring_policies/#{monitoring_policy_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_monitoring_policy(monitoring_policy_id)
|
|
28
|
+
|
|
29
|
+
# Search for MP to return
|
|
30
|
+
if monitoring_policy = self.data[:monitoring_policies].find {
|
|
31
|
+
|hash| hash['id'] == monitoring_policy_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = monitoring_policy
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a monitoring policy's server
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#monitoring_policies__monitoring_policy_id__servers__server_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_mp_server(monitoring_policy_id: nil, server_id: nil)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/monitoring_policies/#{monitoring_policy_id}/servers/#{server_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_mp_server(monitoring_policy_id: nil, server_id: nil)
|
|
28
|
+
|
|
29
|
+
# Search for MP
|
|
30
|
+
if monitoring_policy = self.data[:monitoring_policies].find {
|
|
31
|
+
|hash| hash['id'] == monitoring_policy_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Search for server to return
|
|
39
|
+
if server = monitoring_policy['servers'].find {
|
|
40
|
+
|index| index == server_id
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
raise Fog::Errors::NotFound.new('The requested server could
|
|
44
|
+
not be found.')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Return Response Object to User
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 200
|
|
50
|
+
response.body = server
|
|
51
|
+
response
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end # Mock
|
|
56
|
+
|
|
57
|
+
end # OneAndOne
|
|
58
|
+
end # Compute
|
|
59
|
+
end # Fog
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a monitoring policy's port
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#monitoring_policies__monitoring_policy_id__ports__port_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_port(monitoring_policy_id: nil, port_id: nil)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/monitoring_policies/#{monitoring_policy_id}/ports/#{port_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_port(monitoring_policy_id: nil, port_id: nil)
|
|
28
|
+
|
|
29
|
+
# Search for MP
|
|
30
|
+
if monitoring_policy = self.data[:monitoring_policies].find {
|
|
31
|
+
|hash| hash['id'] == monitoring_policy_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Search for port to return
|
|
39
|
+
if port = monitoring_policy['ports'].find {
|
|
40
|
+
|index| index['id'] == port_id
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
raise Fog::Errors::NotFound.new('The requested port could
|
|
44
|
+
not be found.')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Return Response Object to User
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 200
|
|
50
|
+
response.body = port
|
|
51
|
+
response
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end # Mock
|
|
56
|
+
|
|
57
|
+
end # OneAndOne
|
|
58
|
+
end # Compute
|
|
59
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a private network
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#private_networks__private_network_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_private_network(private_network_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/private_networks/#{private_network_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_private_network(private_network_id)
|
|
28
|
+
|
|
29
|
+
# Search for private network to return
|
|
30
|
+
if private_network = self.data[:private_networks].find {
|
|
31
|
+
|hash| hash['id'] == private_network_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = private_network
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a private network's server
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#private_networks__private_network_id__servers__server_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_private_network_server(private_network_id: nil, server_id: nil)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/private_networks/#{private_network_id}/servers/#{server_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_private_network_server(private_network_id: nil, server_id: nil)
|
|
28
|
+
|
|
29
|
+
# Search for private network
|
|
30
|
+
if private_network = self.data[:private_networks].find {
|
|
31
|
+
|hash| hash['id'] == private_network_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Search for server to return
|
|
39
|
+
if server = private_network['servers'].find {
|
|
40
|
+
|index| index == server_id
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
raise Fog::Errors::NotFound.new('The requested server could
|
|
44
|
+
not be found.')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Return Response Object to User
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 202
|
|
50
|
+
response.body = server
|
|
51
|
+
response
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end # Mock
|
|
56
|
+
|
|
57
|
+
end # OneAndOne
|
|
58
|
+
end # Compute
|
|
59
|
+
end # Fog
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a monitoring policy's process
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#monitoring_policies__monitoring_policy_id__processes__process_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_process(monitoring_policy_id: nil, process_id: nil)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/monitoring_policies/#{monitoring_policy_id}/processes/#{process_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_process(monitoring_policy_id: nil, process_id: nil)
|
|
28
|
+
|
|
29
|
+
# Search for MP
|
|
30
|
+
if monitoring_policy = self.data[:monitoring_policies].find {
|
|
31
|
+
|hash| hash['id'] == monitoring_policy_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Search for process to return
|
|
39
|
+
if process = monitoring_policy['processes'].find {
|
|
40
|
+
|index| index['id'] == process_id
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
raise Fog::Errors::NotFound.new('The requested port could
|
|
44
|
+
not be found.')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Return Response Object to User
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 200
|
|
50
|
+
response.body = process
|
|
51
|
+
response
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end # Mock
|
|
56
|
+
|
|
57
|
+
end # OneAndOne
|
|
58
|
+
end # Compute
|
|
59
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a public IP
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#public_ips__ip_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_public_ip(ip_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/public_ips/#{ip_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_public_ip(ip_id)
|
|
28
|
+
|
|
29
|
+
# Search for IP to return
|
|
30
|
+
if public_ip = self.data[:public_ips].find {
|
|
31
|
+
|hash| hash['id'] == ip_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = public_ip
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a server
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#servers__server_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_server(server_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/servers/#{server_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_server(server_id)
|
|
28
|
+
|
|
29
|
+
# Search for server to return
|
|
30
|
+
if server = self.data[:servers].find {
|
|
31
|
+
|hash| hash['id'] == server_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = server
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a server appliance
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#server_appliances__id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_server_appliance(appliance_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/server_appliances/#{appliance_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_server_appliance(appliance_id)
|
|
28
|
+
|
|
29
|
+
# Search for server appliance to return
|
|
30
|
+
if server_appliance = self.data[:server_appliances].find {
|
|
31
|
+
|hash| hash['id'] == appliance_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = server_appliance
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a server's image
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#servers__server_id__image_get]
|
|
10
|
+
##
|
|
11
|
+
def get_server_image(server_id)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/servers/#{server_id}/image"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_server_image(server_id)
|
|
28
|
+
|
|
29
|
+
# Search for server
|
|
30
|
+
if server = self.data[:servers].find {
|
|
31
|
+
|hash| hash['id'] == server_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Return Response Object to User
|
|
39
|
+
response = Excon::Response.new
|
|
40
|
+
response.status = 200
|
|
41
|
+
response.body = server['image']
|
|
42
|
+
response
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end # Mock
|
|
47
|
+
|
|
48
|
+
end # OneAndOne
|
|
49
|
+
end # Compute
|
|
50
|
+
end # Fog
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class OneAndOne
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Returns information about a server's IP
|
|
9
|
+
# URL: [https://cloudpanel-api.1and1.com/documentation/1and1/v1/en/documentation.html#servers__server_id__ips__ip_id__get]
|
|
10
|
+
##
|
|
11
|
+
def get_server_ip(server_id: nil, ip_id: nil)
|
|
12
|
+
|
|
13
|
+
params = {
|
|
14
|
+
'method' => :get,
|
|
15
|
+
'endpoint' => "/servers/#{server_id}/ips/#{ip_id}"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
request(params)
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end # Real
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Mock
|
|
26
|
+
|
|
27
|
+
def get_server_ip(server_id: nil, ip_id: nil)
|
|
28
|
+
|
|
29
|
+
# Search for server
|
|
30
|
+
if server = self.data[:servers].find {
|
|
31
|
+
|hash| hash['id'] == server_id
|
|
32
|
+
}
|
|
33
|
+
else
|
|
34
|
+
raise Fog::Errors::NotFound.new('The requested resource could
|
|
35
|
+
not be found.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Search for IP to return
|
|
39
|
+
if ip = server['ips'].find {
|
|
40
|
+
|index| index['id'] == ip_id
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
raise Fog::Errors::NotFound.new('The requested server IP could
|
|
44
|
+
not be found.')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Return Response Object to User
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 200
|
|
50
|
+
response.body = ip
|
|
51
|
+
response
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end # Mock
|
|
56
|
+
|
|
57
|
+
end # OneAndOne
|
|
58
|
+
end # Compute
|
|
59
|
+
end # Fog
|