fog-azure-rm 0.0.8 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -0
- data/CHANGELOG.md +11 -1
- data/README.md +13 -5
- data/fog-azure-rm.gemspec +8 -7
- data/lib/fog/azurerm/application_gateway.rb +2 -0
- data/lib/fog/azurerm/dns.rb +10 -1
- data/lib/fog/azurerm/docs/sql.md +130 -0
- data/lib/fog/azurerm/docs/structure.md +1 -1
- data/lib/fog/azurerm/models/application_gateway/gateway.rb +8 -0
- data/lib/fog/azurerm/models/dns/record_set.rb +34 -27
- data/lib/fog/azurerm/models/dns/zone.rb +27 -13
- data/lib/fog/azurerm/models/network/express_route_circuit_authorization.rb +4 -12
- data/lib/fog/azurerm/models/network/express_route_circuit_authorizations.rb +2 -6
- data/lib/fog/azurerm/models/network/local_network_gateway.rb +5 -13
- data/lib/fog/azurerm/models/network/local_network_gateways.rb +2 -5
- data/lib/fog/azurerm/models/network/virtual_network_gateway_connection.rb +3 -20
- data/lib/fog/azurerm/models/network/virtual_network_gateway_connections.rb +1 -4
- data/lib/fog/azurerm/models/sql/sql_database.rb +89 -0
- data/lib/fog/azurerm/models/sql/sql_databases.rb +29 -0
- data/lib/fog/azurerm/models/sql/sql_server.rb +57 -0
- data/lib/fog/azurerm/models/sql/sql_servers.rb +27 -0
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_point.rb +6 -16
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_points.rb +6 -11
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profile.rb +21 -20
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profiles.rb +4 -7
- data/lib/fog/azurerm/network.rb +3 -0
- data/lib/fog/azurerm/requests/application_gateway/start_application_gateway.rb +27 -0
- data/lib/fog/azurerm/requests/application_gateway/stop_application_gateway.rb +27 -0
- data/lib/fog/azurerm/requests/dns/check_for_zone.rb +8 -20
- data/lib/fog/azurerm/requests/dns/create_or_update_record_set.rb +47 -81
- data/lib/fog/azurerm/requests/dns/create_or_update_zone.rb +27 -34
- data/lib/fog/azurerm/requests/dns/delete_record_set.rb +9 -18
- data/lib/fog/azurerm/requests/dns/delete_zone.rb +9 -17
- data/lib/fog/azurerm/requests/dns/get_record_set.rb +11 -20
- data/lib/fog/azurerm/requests/dns/get_records_from_record_set.rb +12 -38
- data/lib/fog/azurerm/requests/dns/get_zone.rb +11 -20
- data/lib/fog/azurerm/requests/dns/list_record_sets.rb +11 -19
- data/lib/fog/azurerm/requests/dns/list_zones.rb +15 -32
- data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit_authorization.rb +4 -2
- data/lib/fog/azurerm/requests/network/create_or_update_local_network_gateway.rb +3 -1
- data/lib/fog/azurerm/requests/network/create_or_update_virtual_network_gateway_connection.rb +3 -1
- data/lib/fog/azurerm/requests/network/delete_express_route_circuit_authorization.rb +2 -1
- data/lib/fog/azurerm/requests/network/delete_local_network_gateway.rb +2 -1
- data/lib/fog/azurerm/requests/network/delete_virtual_network_gateway_connection.rb +2 -1
- data/lib/fog/azurerm/requests/network/get_express_route_circuit_authorization.rb +2 -1
- data/lib/fog/azurerm/requests/network/get_load_balancer.rb +8 -7
- data/lib/fog/azurerm/requests/network/get_local_network_gateway.rb +2 -1
- data/lib/fog/azurerm/requests/network/get_virtual_network_gateway_connection.rb +2 -1
- data/lib/fog/azurerm/requests/network/list_express_route_circuit_authorizations.rb +2 -1
- data/lib/fog/azurerm/requests/network/list_local_network_gateways.rb +2 -1
- data/lib/fog/azurerm/requests/network/list_virtual_network_gateway_connections.rb +2 -1
- data/lib/fog/azurerm/requests/sql/create_or_update_database.rb +74 -0
- data/lib/fog/azurerm/requests/sql/create_or_update_sql_server.rb +61 -0
- data/lib/fog/azurerm/requests/sql/delete_database.rb +35 -0
- data/lib/fog/azurerm/requests/sql/delete_sql_server.rb +35 -0
- data/lib/fog/azurerm/requests/sql/get_database.rb +48 -0
- data/lib/fog/azurerm/requests/sql/get_sql_server.rb +41 -0
- data/lib/fog/azurerm/requests/sql/list_databases.rb +65 -0
- data/lib/fog/azurerm/requests/sql/list_sql_servers.rb +51 -0
- data/lib/fog/azurerm/requests/traffic_manager/delete_traffic_manager_profile.rb +1 -1
- data/lib/fog/azurerm/sql.rb +49 -0
- data/lib/fog/azurerm/utilities/general.rb +19 -0
- data/lib/fog/azurerm/utilities/logger_messages.yml +19 -0
- data/lib/fog/azurerm/version.rb +1 -1
- data/lib/fog/azurerm.rb +21 -0
- data/test/api_stub/models/dns/record_set.rb +34 -56
- data/test/api_stub/models/dns/zone.rb +17 -35
- data/test/api_stub/models/sql/sql_database.rb +28 -0
- data/test/api_stub/models/sql/sql_server.rb +22 -0
- data/test/api_stub/requests/dns/record_set.rb +13 -43
- data/test/api_stub/requests/dns/zone.rb +21 -36
- data/test/api_stub/requests/network/express_route_circuit_authorization.rb +1 -1
- data/test/api_stub/requests/sql/database.rb +69 -0
- data/test/api_stub/requests/sql/sql_server.rb +45 -0
- data/test/api_stub.rb +10 -0
- data/test/integration/application_gateway.rb +17 -5
- data/test/integration/credentials/azure.yml +4 -4
- data/test/integration/express_route_circuit.rb +1 -1
- data/test/integration/record_set.rb +1 -0
- data/test/integration/resource_tag.rb +14 -3
- data/test/integration/sql_server.rb +111 -0
- data/test/integration/traffic_manager.rb +1 -1
- data/test/integration/zone.rb +1 -0
- data/test/models/application_gateway/test_gateway.rb +25 -3
- data/test/models/application_gateway/test_gateways.rb +2 -2
- data/test/models/compute/test_availability_set.rb +1 -1
- data/test/models/compute/test_availability_sets.rb +2 -2
- data/test/models/compute/test_server.rb +2 -2
- data/test/models/compute/test_servers.rb +2 -2
- data/test/models/compute/test_virtual_machine_extension.rb +2 -2
- data/test/models/compute/test_virtual_machine_extensions.rb +2 -2
- data/test/models/dns/test_record_set.rb +5 -4
- data/test/models/dns/test_record_sets.rb +9 -8
- data/test/models/dns/test_zone.rb +4 -3
- data/test/models/dns/test_zones.rb +4 -3
- data/test/models/network/test_express_route_circuit.rb +2 -2
- data/test/models/network/test_express_route_circuit_authorization.rb +3 -3
- data/test/models/network/test_express_route_circuit_authorizations.rb +3 -3
- data/test/models/network/test_express_route_circuit_peering.rb +2 -2
- data/test/models/network/test_express_route_circuit_peerings.rb +3 -3
- data/test/models/network/test_express_route_circuits.rb +2 -2
- data/test/models/network/test_express_route_service_providers.rb +1 -1
- data/test/models/network/test_load_balancer.rb +2 -2
- data/test/models/network/test_load_balancers.rb +2 -2
- data/test/models/network/test_local_network_gateway.rb +2 -2
- data/test/models/network/test_local_network_gateways.rb +2 -2
- data/test/models/network/test_network_interface.rb +2 -2
- data/test/models/network/test_network_interfaces.rb +2 -2
- data/test/models/network/test_network_security_group.rb +1 -1
- data/test/models/network/test_network_security_groups.rb +2 -2
- data/test/models/network/test_network_security_rule.rb +1 -1
- data/test/models/network/test_network_security_rules.rb +3 -3
- data/test/models/network/test_public_ip.rb +2 -2
- data/test/models/network/test_public_ips.rb +2 -2
- data/test/models/network/test_subnet.rb +2 -2
- data/test/models/network/test_subnets.rb +3 -3
- data/test/models/network/test_virtual_network.rb +2 -2
- data/test/models/network/test_virtual_network_gateway.rb +2 -2
- data/test/models/network/test_virtual_network_gateway_connection.rb +2 -2
- data/test/models/network/test_virtual_network_gateway_connections.rb +2 -2
- data/test/models/network/test_virtual_network_gateways.rb +2 -2
- data/test/models/network/test_virtual_networks.rb +2 -2
- data/test/models/resources/test_deployment.rb +2 -2
- data/test/models/resources/test_deployments.rb +1 -1
- data/test/models/resources/test_resource.rb +1 -1
- data/test/models/resources/test_resource_group.rb +2 -2
- data/test/models/resources/test_resource_groups.rb +1 -1
- data/test/models/resources/test_resources.rb +1 -1
- data/test/models/sql/test_database.rb +68 -0
- data/test/models/sql/test_databases.rb +42 -0
- data/test/models/sql/test_sql_server.rb +56 -0
- data/test/models/sql/test_sql_servers.rb +41 -0
- data/test/models/storage/test_data_disk.rb +1 -1
- data/test/models/storage/test_directories.rb +1 -1
- data/test/models/storage/test_directory.rb +1 -1
- data/test/models/storage/test_file.rb +1 -1
- data/test/models/storage/test_files.rb +1 -1
- data/test/models/storage/test_storage_account.rb +1 -1
- data/test/models/storage/test_storage_accounts.rb +2 -2
- data/test/models/traffic_manager/test_traffic_manager_end_point.rb +2 -2
- data/test/models/traffic_manager/test_traffic_manager_end_points.rb +3 -3
- data/test/models/traffic_manager/test_traffic_manager_profile.rb +2 -2
- data/test/models/traffic_manager/test_traffic_manager_profiles.rb +2 -2
- data/test/requests/application_gateway/test_start_application_gateway.rb +25 -0
- data/test/requests/application_gateway/test_stop_application_gateway.rb +25 -0
- data/test/requests/dns/test_check_for_zone.rb +8 -36
- data/test/requests/dns/test_create_record_set.rb +19 -18
- data/test/requests/dns/test_create_zone.rb +14 -13
- data/test/requests/dns/test_delete_record_set.rb +8 -19
- data/test/requests/dns/test_delete_zone.rb +8 -19
- data/test/requests/dns/test_get_record_set.rb +8 -30
- data/test/requests/dns/test_get_records_from_record_set.rb +15 -28
- data/test/requests/dns/test_get_zone.rb +11 -22
- data/test/requests/dns/test_list_record_sets.rb +10 -11
- data/test/requests/dns/test_list_zones.rb +9 -23
- data/test/requests/network/{test_create_or_update_local_network_gateway.rb → test_create_local_network_gateway.rb} +2 -2
- data/test/requests/network/test_create_virtual_network_gateway_connection.rb +2 -2
- data/test/requests/sql/test_create_or_update_database.rb +28 -0
- data/test/requests/sql/test_create_or_update_sql_server.rb +28 -0
- data/test/requests/sql/test_delete_database.rb +34 -0
- data/test/requests/sql/test_delete_sql_server.rb +34 -0
- data/test/requests/sql/test_get_database.rb +35 -0
- data/test/requests/sql/test_get_sql_server.rb +35 -0
- data/test/requests/sql/test_list_databases.rb +35 -0
- data/test/requests/sql/test_list_sql_servers.rb +35 -0
- data/test/smoke_tests/compute/test_resource_group_smoke.rb +27 -0
- data/test/test_helper.rb +27 -0
- metadata +68 -17
@@ -3,41 +3,40 @@ module Fog
|
|
3
3
|
class AzureRM
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
|
-
def create_or_update_zone(
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
body = {
|
11
|
-
location: 'global',
|
12
|
-
tags: {},
|
13
|
-
properties: {}
|
14
|
-
}
|
15
|
-
|
6
|
+
def create_or_update_zone(zone_params)
|
7
|
+
msg = "Creating/updating Zone #{zone_params[:name]} in Resource Group: #{zone_params[:resource_group]}."
|
8
|
+
Fog::Logger.debug msg
|
9
|
+
zone_object = get_zone_object(zone_params)
|
16
10
|
begin
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
body.to_json,
|
21
|
-
accept: 'application/json',
|
22
|
-
content_type: 'application/json',
|
23
|
-
authorization: token
|
24
|
-
)
|
25
|
-
Fog::Logger.debug "Zone #{name} created successfully."
|
26
|
-
parsed_response = JSON.parse(response)
|
27
|
-
parsed_response
|
28
|
-
rescue Exception => e
|
29
|
-
Fog::Logger.warning "Exception creating zone #{name} in resource group #{resource_group}"
|
30
|
-
msg = "AzureDns::Zone - Exception is: #{e.message}"
|
31
|
-
raise msg
|
11
|
+
zone = @dns_client.zones.create_or_update(zone_params[:resource_group], zone_params[:name], zone_object)
|
12
|
+
rescue MsRestAzure::AzureOperationError => e
|
13
|
+
raise_azure_exception(e, msg)
|
32
14
|
end
|
15
|
+
Fog::Logger.debug "Zone #{zone_params[:name]} created/updated successfully."
|
16
|
+
zone
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def get_zone_object(zone_params)
|
22
|
+
zone = Azure::ARM::Dns::Models::Zone.new
|
23
|
+
zone.name = zone_params[:name]
|
24
|
+
zone.location = zone_params[:location]
|
25
|
+
zone.type = zone_params[:type]
|
26
|
+
zone.number_of_record_sets = zone_params[:number_of_record_sets]
|
27
|
+
zone.max_number_of_record_sets = zone_params[:max_number_of_record_sets]
|
28
|
+
zone.tags = zone_params[:tags] if zone.tags.nil?
|
29
|
+
zone.etag = zone_params[:etag]
|
30
|
+
|
31
|
+
zone
|
33
32
|
end
|
34
33
|
end
|
35
34
|
|
36
35
|
# Mock class for DNS Request
|
37
36
|
class Mock
|
38
|
-
def create_or_update_zone(
|
37
|
+
def create_or_update_zone(*)
|
39
38
|
{
|
40
|
-
'id' =>
|
39
|
+
'id' => '/subscriptions/########-####-####-####-############/resourceGroups/resource_group/providers/Microsoft.Network/dnszones/name',
|
41
40
|
'name' => name,
|
42
41
|
'type' => 'Microsoft.Network/dnszones',
|
43
42
|
'etag' => '00000002-0000-0000-76c2-f7ad90b5d101',
|
@@ -46,13 +45,7 @@ module Fog
|
|
46
45
|
'properties' =>
|
47
46
|
{
|
48
47
|
'maxNumberOfRecordSets' => 5000,
|
49
|
-
'nameServers' =>
|
50
|
-
[
|
51
|
-
'ns1-05.azure-dns.com.',
|
52
|
-
'ns2-05.azure-dns.net.',
|
53
|
-
'ns3-05.azure-dns.org.',
|
54
|
-
'ns4-05.azure-dns.info.'
|
55
|
-
],
|
48
|
+
'nameServers' => %w(ns1-05.azure-dns.com. ns2-05.azure-dns.net. ns3-05.azure-dns.org. ns4-05.azure-dns.info.),
|
56
49
|
'numberOfRecordSets' => 2,
|
57
50
|
'parentResourceGroupName' => resource_group
|
58
51
|
}
|
@@ -4,31 +4,22 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def delete_record_set(resource_group, name, zone_name, record_type)
|
7
|
-
|
8
|
-
Fog::Logger.debug
|
9
|
-
|
7
|
+
msg = "Deleting Record Set #{name} from Resource Group #{resource_group}."
|
8
|
+
Fog::Logger.debug msg
|
10
9
|
begin
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
accept: 'application/json',
|
15
|
-
content_type: 'application/json',
|
16
|
-
authorization: token
|
17
|
-
)
|
18
|
-
Fog::Logger.debug "RecordSet #{name} Deleted Successfully!"
|
19
|
-
true
|
20
|
-
rescue Exception => e
|
21
|
-
Fog::Logger.warning "Exception deleting record set #{name} from resource group #{resource_group}"
|
22
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
23
|
-
raise msg
|
10
|
+
@dns_client.record_sets.delete(resource_group, zone_name, name, record_type)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
24
13
|
end
|
14
|
+
Fog::Logger.debug "Record Set #{name} Deleted Successfully."
|
15
|
+
true
|
25
16
|
end
|
26
17
|
end
|
27
18
|
|
28
19
|
# Mock class for DNS Request
|
29
20
|
class Mock
|
30
|
-
def delete_record_set(
|
31
|
-
Fog::Logger.debug
|
21
|
+
def delete_record_set(*)
|
22
|
+
Fog::Logger.debug 'Record Set name deleted successfully.'
|
32
23
|
true
|
33
24
|
end
|
34
25
|
end
|
@@ -4,30 +4,22 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def delete_zone(resource_group, name)
|
7
|
-
|
8
|
-
|
7
|
+
msg = "Deleting Zone #{name} from Resource Group #{resource_group}."
|
8
|
+
Fog::Logger.debug msg
|
9
9
|
begin
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
accept: 'application/json',
|
14
|
-
content_type: 'application/json',
|
15
|
-
authorization: token
|
16
|
-
)
|
17
|
-
Fog::Logger.debug "Zone #{name} deleted successfully."
|
18
|
-
true
|
19
|
-
rescue Exception => e
|
20
|
-
Fog::Logger.warning "Exception deleting zone #{name} from resource group #{resource_group}"
|
21
|
-
msg = "AzureDns::Zone - Exception is: #{e.message}"
|
22
|
-
raise msg
|
10
|
+
@dns_client.zones.delete(resource_group, name)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
23
13
|
end
|
14
|
+
Fog::Logger.debug "Zone #{name} Deleted Successfully."
|
15
|
+
true
|
24
16
|
end
|
25
17
|
end
|
26
18
|
|
27
19
|
# Mock class for DNS Request
|
28
20
|
class Mock
|
29
|
-
def delete_zone(
|
30
|
-
Fog::Logger.debug
|
21
|
+
def delete_zone(*)
|
22
|
+
Fog::Logger.debug 'Zone deleted successfully.'
|
31
23
|
true
|
32
24
|
end
|
33
25
|
end
|
@@ -4,39 +4,30 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def get_record_set(resource_group, name, zone_name, record_type)
|
7
|
-
|
8
|
-
Fog::Logger.debug
|
9
|
-
|
7
|
+
msg = "Getting Record Set #{name} from Resource Group #{resource_group}."
|
8
|
+
Fog::Logger.debug msg
|
10
9
|
begin
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
accept: 'application/json',
|
15
|
-
content_type: 'application/json',
|
16
|
-
authorization: token
|
17
|
-
)
|
18
|
-
rescue Exception => e
|
19
|
-
Fog::Logger.warning "Exception trying to get existing #{record_type} records for the record set: #{name}"
|
20
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
21
|
-
raise msg
|
10
|
+
record_set = @dns_client.record_sets.get(resource_group, zone_name, name, record_type)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
22
13
|
end
|
23
|
-
|
14
|
+
record_set
|
24
15
|
end
|
25
16
|
end
|
26
17
|
|
27
18
|
# Mock class for DNS Request
|
28
19
|
class Mock
|
29
|
-
def get_record_set(
|
20
|
+
def get_record_set(*)
|
30
21
|
{
|
31
|
-
'id' =>
|
32
|
-
'name' => name,
|
33
|
-
'type' =>
|
22
|
+
'id' => '/subscriptions/########-####-####-####-############/resourceGroups/resource_group/providers/Microsoft.Network/dnszones/zone_name/record_type/name',
|
23
|
+
'name' => 'name',
|
24
|
+
'type' => 'Microsoft.Network/dnszones/record_type',
|
34
25
|
'etag' => '3376a38f-a53f-4ed0-a2e7-dfaba67dbb40',
|
35
26
|
'location' => 'global',
|
36
27
|
'properties' =>
|
37
28
|
{
|
38
29
|
'metadata' => nil,
|
39
|
-
'fqdn' =>
|
30
|
+
'fqdn' => 'name.zone_name',
|
40
31
|
'TTL' => 60,
|
41
32
|
'ARecords' =>
|
42
33
|
[
|
@@ -4,53 +4,27 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def get_records_from_record_set(resource_group, name, zone_name, record_type)
|
7
|
-
|
8
|
-
Fog::Logger.debug
|
9
|
-
|
10
|
-
existing_records = []
|
7
|
+
msg = "Getting all records from RecordSet #{name} of type '#{record_type}' in zone #{zone_name}"
|
8
|
+
Fog::Logger.debug msg
|
11
9
|
begin
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
accept: 'application/json',
|
16
|
-
content_type: 'application/json',
|
17
|
-
authorization: token
|
18
|
-
)
|
19
|
-
rescue Exception => e
|
20
|
-
Fog::Logger.warning "Exception trying to get existing #{record_type} records for the record set: #{name}"
|
21
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
22
|
-
raise msg
|
10
|
+
record_set = @dns_client.record_sets.get(resource_group, zone_name, name, record_type)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
23
13
|
end
|
24
14
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
Fog::Logger.debug "AzureDns:RecordSet - A record is: #{record}"
|
31
|
-
existing_records.push(record['ipv4Address'])
|
32
|
-
end
|
33
|
-
when 'CNAME'
|
34
|
-
Fog::Logger.debug "AzureDns:RecordSet - CNAME record is: #{dns_hash['properties']['CNAMERecord']['cname']}"
|
35
|
-
existing_records.push(dns_hash['properties']['CNAMERecord']['cname'])
|
36
|
-
end
|
37
|
-
existing_records
|
38
|
-
rescue Exception => e
|
39
|
-
Fog::Logger.warning "Exception trying to parse response: #{dns_response}"
|
40
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
41
|
-
raise msg
|
15
|
+
case record_type
|
16
|
+
when 'A'
|
17
|
+
record_set.arecords
|
18
|
+
when 'CNAME'
|
19
|
+
record_set.cname_record
|
42
20
|
end
|
43
21
|
end
|
44
22
|
end
|
45
23
|
|
46
24
|
# Mock class for DNS Request
|
47
25
|
class Mock
|
48
|
-
def get_records_from_record_set(
|
49
|
-
|
50
|
-
'1.2.3.4',
|
51
|
-
'1.2.3.5',
|
52
|
-
'1.2.3.6'
|
53
|
-
]
|
26
|
+
def get_records_from_record_set(*)
|
27
|
+
%w(1.2.3.4 1.2.3.5 1.2.3.6)
|
54
28
|
end
|
55
29
|
end
|
56
30
|
end
|
@@ -4,32 +4,23 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def get_zone(resource_group, name)
|
7
|
-
|
8
|
-
Fog::Logger.debug
|
9
|
-
|
7
|
+
msg = "Getting Zone #{name} from Resource Group #{resource_group}."
|
8
|
+
Fog::Logger.debug msg
|
10
9
|
begin
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
accept: 'application/json',
|
15
|
-
content_type: 'application/json',
|
16
|
-
authorization: token
|
17
|
-
)
|
18
|
-
rescue Exception => e
|
19
|
-
Fog::Logger.warning "Exception trying to get existing zone: #{name}."
|
20
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
21
|
-
raise msg
|
10
|
+
zone = @dns_client.zones.get(resource_group, name)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
22
13
|
end
|
23
|
-
|
14
|
+
zone
|
24
15
|
end
|
25
16
|
end
|
26
17
|
|
27
18
|
# Mock class for DNS Request
|
28
19
|
class Mock
|
29
|
-
def get_zone(
|
20
|
+
def get_zone(*)
|
30
21
|
{
|
31
|
-
'id' =>
|
32
|
-
'name' =>
|
22
|
+
'id' => '/subscriptions/########-####-####-####-############/resourceGroups/resource_group/providers/Microsoft.Network/dnszones/zone_name',
|
23
|
+
'name' => 'zone_name',
|
33
24
|
'type' => 'Microsoft.Network/dnszones',
|
34
25
|
'etag' => '00000003-0000-0000-bd66-02b337a4d101',
|
35
26
|
'location' => 'global',
|
@@ -39,9 +30,9 @@ module Fog
|
|
39
30
|
'maxNumberOfRecordSets' => 100_00,
|
40
31
|
'nameServers' => nil,
|
41
32
|
'numberOfRecordSets' => 2,
|
42
|
-
'parentResourceGroupName' => resource_group
|
33
|
+
'parentResourceGroupName' => 'resource_group'
|
43
34
|
},
|
44
|
-
'resource_group' => resource_group
|
35
|
+
'resource_group' => 'resource_group'
|
45
36
|
}
|
46
37
|
end
|
47
38
|
end
|
@@ -4,31 +4,23 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def list_record_sets(resource_group, zone_name)
|
7
|
-
|
7
|
+
msg = 'Getting list of Record sets.'
|
8
|
+
Fog::Logger.debug msg
|
8
9
|
begin
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
accept: 'application/json',
|
13
|
-
content_type: 'application/json',
|
14
|
-
authorization: token
|
15
|
-
)
|
16
|
-
parsed_record_set = JSON.parse(dns_response)
|
17
|
-
parsed_record_set['value']
|
18
|
-
rescue Exception => e
|
19
|
-
Fog::Logger.warning "Exception listing recordsets in zone #{zone_name} in resource group #{resource_group}"
|
20
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
21
|
-
raise msg
|
10
|
+
zones = @dns_client.record_sets.list_all_in_resource_group(resource_group, zone_name)
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
22
13
|
end
|
14
|
+
zones
|
23
15
|
end
|
24
16
|
end
|
25
17
|
|
26
18
|
# Mock class for DNS Request
|
27
19
|
class Mock
|
28
|
-
def list_record_sets(
|
20
|
+
def list_record_sets(*)
|
29
21
|
[
|
30
22
|
{
|
31
|
-
'id' =>
|
23
|
+
'id' => '/subscriptions/########-####-####-####-############/resourceGroups/resource_group/providers/Microsoft.Network/dnszones/zone_name/A/test_record',
|
32
24
|
'name' => 'test_record',
|
33
25
|
'type' => 'Microsoft.Network/dnszones/A',
|
34
26
|
'etag' => '7f159cb1-653d-4920-bc03-153c700412a2',
|
@@ -36,7 +28,7 @@ module Fog
|
|
36
28
|
'properties' =>
|
37
29
|
{
|
38
30
|
'metadata' => nil,
|
39
|
-
'fqdn' =>
|
31
|
+
'fqdn' => 'test_record.zone_name',
|
40
32
|
'TTL' => 60,
|
41
33
|
'ARecords' =>
|
42
34
|
[
|
@@ -47,7 +39,7 @@ module Fog
|
|
47
39
|
}
|
48
40
|
},
|
49
41
|
{
|
50
|
-
'id' =>
|
42
|
+
'id' => '/subscriptions/########-####-####-####-############/resourceGroups/resource_group/providers/Microsoft.Network/dnszones/zone_name/CNAME/test_record1',
|
51
43
|
'name' => 'test_record1',
|
52
44
|
'type' => 'Microsoft.Network/dnszones/CNAME',
|
53
45
|
'etag' => 'cc5ceb6e-16ad-4a5f-bbd7-9bc31c12d0cf',
|
@@ -55,7 +47,7 @@ module Fog
|
|
55
47
|
'properties' =>
|
56
48
|
{
|
57
49
|
'metadata' => nil,
|
58
|
-
'fqdn' =>
|
50
|
+
'fqdn' => 'test_record1.zone_name',
|
59
51
|
'TTL' => 60,
|
60
52
|
'CNAMERecord' =>
|
61
53
|
{
|
@@ -4,34 +4,27 @@ module Fog
|
|
4
4
|
# Real class for DNS Request
|
5
5
|
class Real
|
6
6
|
def list_zones
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
7
|
+
msg = 'Getting list of Zones.'
|
8
|
+
Fog::Logger.debug msg
|
9
|
+
begin
|
10
|
+
zones = @dns_client.zones.list_in_subscription
|
11
|
+
rescue MsRestAzure::AzureOperationError => e
|
12
|
+
raise_azure_exception(e, msg)
|
12
13
|
end
|
13
|
-
|
14
|
+
zones
|
14
15
|
end
|
15
16
|
|
16
17
|
private
|
17
18
|
|
18
19
|
def list_zones_by_rg(resource_group)
|
19
|
-
|
20
|
+
msg = "Getting list of Zones in Resource Group #{resource_group}."
|
21
|
+
Fog::Logger.debug msg
|
20
22
|
begin
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
accept: 'application/json',
|
25
|
-
content_type: 'application/json',
|
26
|
-
authorization: token
|
27
|
-
)
|
28
|
-
parsed_zone = JSON.parse(dns_response)
|
29
|
-
parsed_zone['value']
|
30
|
-
rescue Exception => e
|
31
|
-
Fog::Logger.warning "Exception listing zones in resource group #{resource_group}"
|
32
|
-
msg = "AzureDns::RecordSet - Exception is: #{e.message}"
|
33
|
-
raise msg
|
23
|
+
zones = @dns_client.zones.list_in_resource_group(resource_group)
|
24
|
+
rescue MsRestAzure::AzureOperationError => e
|
25
|
+
raise_azure_exception(e, msg)
|
34
26
|
end
|
27
|
+
zones
|
35
28
|
end
|
36
29
|
end
|
37
30
|
|
@@ -50,12 +43,7 @@ module Fog
|
|
50
43
|
{
|
51
44
|
'maxNumberOfRecordSets' => 5000,
|
52
45
|
'nameServers' =>
|
53
|
-
|
54
|
-
'ns1-05.azure-dns.com.',
|
55
|
-
'ns2-05.azure-dns.net.',
|
56
|
-
'ns3-05.azure-dns.org.',
|
57
|
-
'ns4-05.azure-dns.info.'
|
58
|
-
],
|
46
|
+
%w(ns1-05.azure-dns.com. ns2-05.azure-dns.net. ns3-05.azure-dns.org. ns4-05.azure-dns.info.),
|
59
47
|
'numberOfRecordSets' => 2,
|
60
48
|
'parentResourceGroupName' => 'fog_test_rg'
|
61
49
|
}
|
@@ -71,12 +59,7 @@ module Fog
|
|
71
59
|
{
|
72
60
|
'maxNumberOfRecordSets' => 5000,
|
73
61
|
'nameServers' =>
|
74
|
-
|
75
|
-
'ns1-02.azure-dns.com.',
|
76
|
-
'ns2-02.azure-dns.net.',
|
77
|
-
'ns3-02.azure-dns.org.',
|
78
|
-
'ns4-02.azure-dns.info.'
|
79
|
-
],
|
62
|
+
%w(ns1-02.azure-dns.com. ns2-02.azure-dns.net. ns3-02.azure-dns.org. ns4-02.azure-dns.info.),
|
80
63
|
'numberOfRecordSets' => 2,
|
81
64
|
'parentResourceGroupName' => 'fog_test_rg'
|
82
65
|
}
|
data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit_authorization.rb
CHANGED
@@ -4,7 +4,9 @@ module Fog
|
|
4
4
|
# Real class for Express Route Circuit Authorization Request
|
5
5
|
class Real
|
6
6
|
def create_or_update_express_route_circuit_authorization(circuit_authorization_params)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['express_route_circuit_authentication']['message']['create']
|
8
|
+
.gsub('NAME', circuit_authorization_params[:authorization_name])
|
9
|
+
.gsub('RESOURCE_GROUP', circuit_authorization_params[:resource_group])
|
8
10
|
Fog::Logger.debug msg
|
9
11
|
circuit_authorization = get_circuit_authorization_object(circuit_authorization_params)
|
10
12
|
begin
|
@@ -22,7 +24,7 @@ module Fog
|
|
22
24
|
circuit_authorization = Azure::ARM::Network::Models::ExpressRouteCircuitAuthorization.new
|
23
25
|
circuit_authorization.name = circuit_authorization_params[:authorization_name]
|
24
26
|
circuit_authorization.authorization_key = circuit_authorization_params[:authorization_key]
|
25
|
-
circuit_authorization.authorization_use_status = circuit_authorization_params[:
|
27
|
+
circuit_authorization.authorization_use_status = circuit_authorization_params[:authorization_use_status]
|
26
28
|
circuit_authorization.provisioning_state = circuit_authorization_params[:provisioning_state]
|
27
29
|
circuit_authorization.etag = circuit_authorization_params[:etag]
|
28
30
|
|
@@ -4,7 +4,9 @@ module Fog
|
|
4
4
|
# Real class for Local Network Gateway Request
|
5
5
|
class Real
|
6
6
|
def create_or_update_local_network_gateway(local_network_gateway_params)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['local_network_gateway']['message']['create']
|
8
|
+
.gsub('NAME', local_network_gateway_params[:name])
|
9
|
+
.gsub('RESOURCE_GROUP', local_network_gateway_params[:resource_group])
|
8
10
|
Fog::Logger.debug msg
|
9
11
|
local_network_gateway = get_local_network_gateway_object(local_network_gateway_params)
|
10
12
|
begin
|
data/lib/fog/azurerm/requests/network/create_or_update_virtual_network_gateway_connection.rb
CHANGED
@@ -5,7 +5,9 @@ module Fog
|
|
5
5
|
# Real class for Network Request
|
6
6
|
class Real
|
7
7
|
def create_or_update_virtual_network_gateway_connection(gateway_connection_params)
|
8
|
-
msg =
|
8
|
+
msg = @logger_messages['network']['virtual_network_gateway_connection']['message']['create']
|
9
|
+
.gsub('NAME', gateway_connection_params[:name])
|
10
|
+
.gsub('RESOURCE_GROUP', gateway_connection_params[:resource_group_name])
|
9
11
|
Fog::Logger.debug msg
|
10
12
|
gateway_connection = get_network_gateway_connection_object(gateway_connection_params)
|
11
13
|
begin
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Express Route Circuit Authorization Request
|
5
5
|
class Real
|
6
6
|
def delete_express_route_circuit_authorization(resource_group_name, circuit_name, authorization_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['express_route_circuit_authentication']['message']['delete']
|
8
|
+
.gsub('NAME', authorization_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
@network_client.express_route_circuit_authorizations.delete(resource_group_name, circuit_name, authorization_name)
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Local Network Gateway Request
|
5
5
|
class Real
|
6
6
|
def delete_local_network_gateway(resource_group_name, local_network_gateway_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['local_network_gateway']['message']['delete']
|
8
|
+
.gsub('NAME', local_network_gateway_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
@network_client.local_network_gateways.delete(resource_group_name, local_network_gateway_name)
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Network Request
|
5
5
|
class Real
|
6
6
|
def delete_virtual_network_gateway_connection(resource_group_name, gateway_connection_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['virtual_network_gateway_connection']['message']['delete']
|
8
|
+
.gsub('NAME', gateway_connection_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
@network_client.virtual_network_gateway_connections.delete(resource_group_name, gateway_connection_name)
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Express Route Circuit Authorization Request
|
5
5
|
class Real
|
6
6
|
def get_express_route_circuit_authorization(resource_group_name, circuit_name, authorization_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['express_route_circuit_authentication']['message']['get']
|
8
|
+
.gsub('NAME', authorization_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
circuit_authorization = @network_client.express_route_circuit_authorizations.get(resource_group_name, circuit_name, authorization_name)
|
@@ -14,10 +14,12 @@ module Fog
|
|
14
14
|
Fog::Logger.debug "Getting Load Balancer #{load_balancer_name} Successfully."
|
15
15
|
load_balancer
|
16
16
|
end
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
end
|
18
|
+
|
19
|
+
# Mock class for Load-Balancer Request
|
20
|
+
class Mock
|
21
|
+
def get_load_balancer(*)
|
22
|
+
response = '{
|
21
23
|
"name":"mylb1",
|
22
24
|
"id":"/subscriptions/{guid}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/mylb1",
|
23
25
|
"location":"North US",
|
@@ -159,9 +161,8 @@ module Fog
|
|
159
161
|
]
|
160
162
|
}
|
161
163
|
}'
|
162
|
-
|
163
|
-
|
164
|
-
end
|
164
|
+
load_balancer_mapper = Azure::ARM::Network::Models::LoadBalancer.mapper
|
165
|
+
@network_client.deserialize(load_balancer_mapper, JSON.load(response), 'result.body')
|
165
166
|
end
|
166
167
|
end
|
167
168
|
end
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Local Network Gateway Request
|
5
5
|
class Real
|
6
6
|
def get_local_network_gateway(resource_group_name, local_network_gateway_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['local_network_gateway']['message']['get']
|
8
|
+
.gsub('NAME', local_network_gateway_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
local_network_gateway = @network_client.local_network_gateways.get(resource_group_name, local_network_gateway_name)
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Virtual Network Gateway Connection Request
|
5
5
|
class Real
|
6
6
|
def get_virtual_network_gateway_connection(resource_group_name, gateway_connection_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['virtual_network_gateway_connection']['message']['get']
|
8
|
+
.gsub('NAME', gateway_connection_name).gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
gateway_connection = @network_client.virtual_network_gateway_connections.get(resource_group_name, gateway_connection_name)
|
@@ -4,7 +4,8 @@ module Fog
|
|
4
4
|
# Real class for Express Route Circuit Authorization Request
|
5
5
|
class Real
|
6
6
|
def list_express_route_circuit_authorizations(resource_group_name, circuit_name)
|
7
|
-
msg =
|
7
|
+
msg = @logger_messages['network']['express_route_circuit_authentication']['message']['list']
|
8
|
+
.gsub('RESOURCE_GROUP', resource_group_name)
|
8
9
|
Fog::Logger.debug msg
|
9
10
|
begin
|
10
11
|
circuit_authorizations = @network_client.express_route_circuit_authorizations.list(resource_group_name, circuit_name)
|