fog-azure-rm 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (433) hide show
  1. checksums.yaml +4 -4
  2. data/.DS_Store +0 -0
  3. data/.travis.yml +11 -1
  4. data/CHANGELOG.md +35 -14
  5. data/fog-azure-rm.gemspec +8 -9
  6. data/lib/fog/azurerm.rb +3 -0
  7. data/lib/fog/azurerm/application_gateway.rb +64 -0
  8. data/lib/fog/azurerm/compute.rb +1 -0
  9. data/lib/fog/azurerm/config.rb +17 -0
  10. data/lib/fog/azurerm/core.rb +1 -0
  11. data/lib/fog/azurerm/dns.rb +4 -2
  12. data/lib/fog/azurerm/docs/application_gateway.md +139 -0
  13. data/lib/fog/azurerm/docs/dns.md +28 -6
  14. data/lib/fog/azurerm/docs/network.md +151 -143
  15. data/lib/fog/azurerm/docs/resources.md +3 -3
  16. data/lib/fog/azurerm/docs/storage.md +15 -3
  17. data/lib/fog/azurerm/docs/traffic_manager.md +118 -0
  18. data/lib/fog/azurerm/fog_azure_rm_exception.rb +13 -0
  19. data/lib/fog/azurerm/models/application_gateway/backend_address_pool.rb +22 -0
  20. data/lib/fog/azurerm/models/application_gateway/backend_http_setting.rb +26 -0
  21. data/lib/fog/azurerm/models/application_gateway/frontend_ip_configuration.rb +22 -0
  22. data/lib/fog/azurerm/models/application_gateway/frontend_port.rb +18 -0
  23. data/lib/fog/azurerm/models/{network/application_gateway.rb → application_gateway/gateway.rb} +74 -78
  24. data/lib/fog/azurerm/models/{network/application_gateways.rb → application_gateway/gateways.rb} +6 -6
  25. data/lib/fog/azurerm/models/application_gateway/http_listener.rb +28 -0
  26. data/lib/fog/azurerm/models/application_gateway/ip_configuration.rb +18 -0
  27. data/lib/fog/azurerm/models/application_gateway/probe.rb +28 -0
  28. data/lib/fog/azurerm/models/application_gateway/request_routing_rule.rb +25 -0
  29. data/lib/fog/azurerm/models/application_gateway/ssl_certificate.rb +22 -0
  30. data/lib/fog/azurerm/models/application_gateway/url_path_map.rb +28 -0
  31. data/lib/fog/azurerm/models/compute/availability_set.rb +8 -8
  32. data/lib/fog/azurerm/models/compute/availability_sets.rb +3 -1
  33. data/lib/fog/azurerm/models/compute/server.rb +50 -34
  34. data/lib/fog/azurerm/models/dns/record_set.rb +30 -2
  35. data/lib/fog/azurerm/models/dns/record_sets.rb +4 -2
  36. data/lib/fog/azurerm/models/dns/zone.rb +1 -1
  37. data/lib/fog/azurerm/models/dns/zones.rb +4 -2
  38. data/lib/fog/azurerm/models/network/express_route_circuit.rb +89 -0
  39. data/lib/fog/azurerm/models/network/express_route_circuit_peering.rb +93 -0
  40. data/lib/fog/azurerm/models/network/express_route_circuit_peerings.rb +31 -0
  41. data/lib/fog/azurerm/models/network/express_route_circuits.rb +29 -0
  42. data/lib/fog/azurerm/models/network/express_route_service_provider.rb +29 -0
  43. data/lib/fog/azurerm/models/network/express_route_service_providers.rb +21 -0
  44. data/lib/fog/azurerm/models/network/frontend_ip_configuration.rb +5 -15
  45. data/lib/fog/azurerm/models/network/inbound_nat_pool.rb +6 -7
  46. data/lib/fog/azurerm/models/network/inbound_nat_rule.rb +6 -9
  47. data/lib/fog/azurerm/models/network/load_balancer.rb +17 -19
  48. data/lib/fog/azurerm/models/network/load_balancing_rule.rb +11 -16
  49. data/lib/fog/azurerm/models/network/network_interface.rb +24 -24
  50. data/lib/fog/azurerm/models/network/network_security_group.rb +9 -9
  51. data/lib/fog/azurerm/models/network/network_security_rule.rb +13 -13
  52. data/lib/fog/azurerm/models/network/probe.rb +7 -8
  53. data/lib/fog/azurerm/models/network/public_ip.rb +15 -16
  54. data/lib/fog/azurerm/models/network/public_ips.rb +4 -2
  55. data/lib/fog/azurerm/models/network/subnet.rb +8 -8
  56. data/lib/fog/azurerm/models/network/virtual_network.rb +9 -9
  57. data/lib/fog/azurerm/models/network/virtual_network_gateway.rb +138 -0
  58. data/lib/fog/azurerm/models/network/virtual_network_gateways.rb +29 -0
  59. data/lib/fog/azurerm/models/network/vpn_client_configuration.rb +34 -0
  60. data/lib/fog/azurerm/models/network/vpn_client_revoked_certificates.rb +22 -0
  61. data/lib/fog/azurerm/models/network/vpn_client_root_certificates.rb +22 -0
  62. data/lib/fog/azurerm/models/resources/azure_resource.rb +5 -5
  63. data/lib/fog/azurerm/models/resources/dependency.rb +5 -5
  64. data/lib/fog/azurerm/models/resources/deployment.rb +14 -14
  65. data/lib/fog/azurerm/models/resources/provider.rb +4 -4
  66. data/lib/fog/azurerm/models/resources/provider_resource_type.rb +4 -4
  67. data/lib/fog/azurerm/models/resources/resource_group.rb +9 -1
  68. data/lib/fog/azurerm/models/resources/resource_groups.rb +5 -1
  69. data/lib/fog/azurerm/models/storage/data_disk.rb +6 -6
  70. data/lib/fog/azurerm/models/storage/storage_account.rb +41 -10
  71. data/lib/fog/azurerm/models/storage/storage_accounts.rb +1 -6
  72. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_point.rb +75 -0
  73. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_points.rb +31 -0
  74. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profile.rb +59 -0
  75. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profiles.rb +26 -0
  76. data/lib/fog/azurerm/network.rb +25 -25
  77. data/lib/fog/azurerm/requests/{network → application_gateway}/create_application_gateway.rb +59 -95
  78. data/lib/fog/azurerm/requests/application_gateway/delete_application_gateway.rb +26 -0
  79. data/lib/fog/azurerm/requests/application_gateway/list_application_gateways.rb +29 -0
  80. data/lib/fog/azurerm/requests/compute/attach_data_disk_to_vm.rb +38 -38
  81. data/lib/fog/azurerm/requests/compute/check_vm_status.rb +8 -10
  82. data/lib/fog/azurerm/requests/compute/create_availability_set.rb +15 -20
  83. data/lib/fog/azurerm/requests/compute/create_virtual_machine.rb +50 -45
  84. data/lib/fog/azurerm/requests/compute/deallocate_virtual_machine.rb +9 -10
  85. data/lib/fog/azurerm/requests/compute/delete_availability_set.rb +7 -8
  86. data/lib/fog/azurerm/requests/compute/delete_virtual_machine.rb +9 -10
  87. data/lib/fog/azurerm/requests/compute/detach_data_disk_from_vm.rb +20 -19
  88. data/lib/fog/azurerm/requests/compute/generalize_virtual_machine.rb +9 -10
  89. data/lib/fog/azurerm/requests/compute/get_availability_set.rb +32 -0
  90. data/lib/fog/azurerm/requests/compute/get_virtual_machine.rb +17 -14
  91. data/lib/fog/azurerm/requests/compute/list_availability_sets.rb +7 -6
  92. data/lib/fog/azurerm/requests/compute/list_available_sizes_for_virtual_machine.rb +37 -31
  93. data/lib/fog/azurerm/requests/compute/list_virtual_machines.rb +47 -42
  94. data/lib/fog/azurerm/requests/compute/power_off_virtual_machine.rb +9 -10
  95. data/lib/fog/azurerm/requests/compute/redeploy_virtual_machine.rb +9 -10
  96. data/lib/fog/azurerm/requests/compute/restart_virtual_machine.rb +9 -10
  97. data/lib/fog/azurerm/requests/compute/start_virtual_machine.rb +9 -10
  98. data/lib/fog/azurerm/requests/dns/{create_record_set.rb → create_or_update_record_set.rb} +2 -2
  99. data/lib/fog/azurerm/requests/dns/{create_zone.rb → create_or_update_zone.rb} +3 -3
  100. data/lib/fog/azurerm/requests/dns/get_record_set.rb +56 -0
  101. data/lib/fog/azurerm/requests/dns/get_zone.rb +50 -0
  102. data/lib/fog/azurerm/requests/dns/list_record_sets.rb +2 -2
  103. data/lib/fog/azurerm/requests/network/add_address_prefixes_in_virtual_network.rb +3 -3
  104. data/lib/fog/azurerm/requests/network/add_dns_servers_in_virtual_network.rb +8 -6
  105. data/lib/fog/azurerm/requests/network/add_security_rules.rb +15 -13
  106. data/lib/fog/azurerm/requests/network/add_subnets_in_virtual_network.rb +6 -4
  107. data/lib/fog/azurerm/requests/network/attach_network_security_group_to_subnet.rb +13 -15
  108. data/lib/fog/azurerm/requests/network/attach_resource_to_nic.rb +17 -16
  109. data/lib/fog/azurerm/requests/network/attach_route_table_to_subnet.rb +13 -15
  110. data/lib/fog/azurerm/requests/network/check_for_public_ip.rb +2 -4
  111. data/lib/fog/azurerm/requests/network/check_for_virtual_network.rb +5 -5
  112. data/lib/fog/azurerm/requests/network/create_load_balancer.rb +43 -62
  113. data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit.rb +98 -0
  114. data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit_peering.rb +69 -0
  115. data/lib/fog/azurerm/requests/network/create_or_update_network_interface.rb +14 -19
  116. data/lib/fog/azurerm/requests/network/create_or_update_network_security_group.rb +29 -26
  117. data/lib/fog/azurerm/requests/network/create_or_update_virtual_network.rb +19 -25
  118. data/lib/fog/azurerm/requests/network/create_or_update_virtual_network_gateway.rb +151 -0
  119. data/lib/fog/azurerm/requests/network/create_public_ip.rb +8 -10
  120. data/lib/fog/azurerm/requests/network/create_subnet.rb +13 -15
  121. data/lib/fog/azurerm/requests/network/delete_express_route_circuit.rb +28 -0
  122. data/lib/fog/azurerm/requests/network/delete_express_route_circuit_peering.rb +28 -0
  123. data/lib/fog/azurerm/requests/network/delete_load_balancer.rb +8 -7
  124. data/lib/fog/azurerm/requests/network/delete_network_interface.rb +7 -8
  125. data/lib/fog/azurerm/requests/network/delete_network_security_group.rb +8 -7
  126. data/lib/fog/azurerm/requests/network/delete_public_ip.rb +4 -6
  127. data/lib/fog/azurerm/requests/network/delete_subnet.rb +6 -7
  128. data/lib/fog/azurerm/requests/network/delete_virtual_network.rb +6 -7
  129. data/lib/fog/azurerm/requests/network/delete_virtual_network_gateway.rb +28 -0
  130. data/lib/fog/azurerm/requests/network/detach_network_security_group_from_subnet.rb +15 -17
  131. data/lib/fog/azurerm/requests/network/detach_resource_from_nic.rb +15 -14
  132. data/lib/fog/azurerm/requests/network/detach_route_table_from_subnet.rb +15 -17
  133. data/lib/fog/azurerm/requests/network/get_express_route_circuit.rb +51 -0
  134. data/lib/fog/azurerm/requests/network/get_express_route_circuit_peering.rb +48 -0
  135. data/lib/fog/azurerm/requests/network/get_network_interface.rb +7 -7
  136. data/lib/fog/azurerm/requests/network/get_network_security_group.rb +11 -7
  137. data/lib/fog/azurerm/requests/network/get_public_ip.rb +41 -0
  138. data/lib/fog/azurerm/requests/network/get_subnet.rb +10 -9
  139. data/lib/fog/azurerm/requests/network/get_virtual_network.rb +12 -14
  140. data/lib/fog/azurerm/requests/network/get_virtual_network_gateway.rb +45 -0
  141. data/lib/fog/azurerm/requests/network/list_express_route_circuit_peerings.rb +44 -0
  142. data/lib/fog/azurerm/requests/network/list_express_route_circuits.rb +53 -0
  143. data/lib/fog/azurerm/requests/network/list_express_route_service_providers.rb +37 -0
  144. data/lib/fog/azurerm/requests/network/list_load_balancers.rb +6 -6
  145. data/lib/fog/azurerm/requests/network/list_network_interfaces.rb +42 -37
  146. data/lib/fog/azurerm/requests/network/list_network_security_groups.rb +149 -143
  147. data/lib/fog/azurerm/requests/network/list_public_ips.rb +26 -22
  148. data/lib/fog/azurerm/requests/network/list_subnets.rb +35 -31
  149. data/lib/fog/azurerm/requests/network/list_virtual_network_gateways.rb +43 -0
  150. data/lib/fog/azurerm/requests/network/list_virtual_networks.rb +52 -51
  151. data/lib/fog/azurerm/requests/network/remove_address_prefixes_from_virtual_network.rb +6 -4
  152. data/lib/fog/azurerm/requests/network/remove_dns_servers_from_virtual_network.rb +6 -4
  153. data/lib/fog/azurerm/requests/network/remove_security_rule.rb +15 -13
  154. data/lib/fog/azurerm/requests/network/remove_subnets_from_virtual_network.rb +6 -4
  155. data/lib/fog/azurerm/requests/resources/create_deployment.rb +27 -21
  156. data/lib/fog/azurerm/requests/resources/create_resource_group.rb +9 -9
  157. data/lib/fog/azurerm/requests/resources/delete_deployment.rb +3 -4
  158. data/lib/fog/azurerm/requests/resources/delete_resource_group.rb +3 -5
  159. data/lib/fog/azurerm/requests/resources/delete_resource_tag.rb +14 -20
  160. data/lib/fog/azurerm/requests/resources/list_deployments.rb +8 -7
  161. data/lib/fog/azurerm/requests/resources/list_resource_groups.rb +27 -23
  162. data/lib/fog/azurerm/requests/resources/list_tagged_resources.rb +30 -27
  163. data/lib/fog/azurerm/requests/resources/tag_resource.rb +15 -20
  164. data/lib/fog/azurerm/requests/storage/check_storage_account_name_availability.rb +13 -15
  165. data/lib/fog/azurerm/requests/storage/create_container.rb +6 -5
  166. data/lib/fog/azurerm/requests/storage/create_storage_account.rb +36 -22
  167. data/lib/fog/azurerm/requests/storage/delete_container.rb +6 -5
  168. data/lib/fog/azurerm/requests/storage/delete_disk.rb +13 -12
  169. data/lib/fog/azurerm/requests/storage/delete_storage_account.rb +8 -9
  170. data/lib/fog/azurerm/requests/storage/get_blob_metadata.rb +10 -9
  171. data/lib/fog/azurerm/requests/storage/get_container_access_control_list.rb +6 -5
  172. data/lib/fog/azurerm/requests/storage/get_container_metadata.rb +8 -7
  173. data/lib/fog/azurerm/requests/storage/get_container_properties.rb +6 -5
  174. data/lib/fog/azurerm/requests/storage/get_storage_access_keys.rb +7 -7
  175. data/lib/fog/azurerm/requests/storage/list_containers.rb +6 -5
  176. data/lib/fog/azurerm/requests/storage/list_storage_account_for_rg.rb +7 -12
  177. data/lib/fog/azurerm/requests/storage/list_storage_accounts.rb +7 -13
  178. data/lib/fog/azurerm/requests/storage/set_blob_metadata.rb +8 -7
  179. data/lib/fog/azurerm/requests/storage/set_container_metadata.rb +8 -7
  180. data/lib/fog/azurerm/requests/traffic_manager/create_traffic_manager_endpoint.rb +54 -0
  181. data/lib/fog/azurerm/requests/traffic_manager/create_traffic_manager_profile.rb +107 -0
  182. data/lib/fog/azurerm/requests/traffic_manager/delete_traffic_manager_endpoint.rb +28 -0
  183. data/lib/fog/azurerm/requests/traffic_manager/delete_traffic_manager_profile.rb +26 -0
  184. data/lib/fog/azurerm/requests/traffic_manager/get_traffic_manager_endpoint.rb +39 -0
  185. data/lib/fog/azurerm/requests/traffic_manager/get_traffic_manager_profile.rb +80 -0
  186. data/lib/fog/azurerm/requests/traffic_manager/list_traffic_manager_profiles.rb +82 -0
  187. data/lib/fog/azurerm/storage.rb +1 -1
  188. data/lib/fog/azurerm/traffic_manager.rb +56 -0
  189. data/lib/fog/azurerm/utilities/general.rb +28 -0
  190. data/lib/fog/azurerm/version.rb +1 -1
  191. data/test/api_stub.rb +14 -7
  192. data/test/api_stub/models/{network/application_gateway.rb → application_gateway/gateway.rb} +8 -7
  193. data/test/api_stub/models/compute/availability_set.rb +35 -6
  194. data/test/api_stub/models/compute/server.rb +15 -16
  195. data/test/api_stub/models/dns/record_set.rb +20 -0
  196. data/test/api_stub/models/network/express_route_circuit.rb +47 -0
  197. data/test/api_stub/models/network/express_route_circuit_peering.rb +33 -0
  198. data/test/api_stub/models/network/express_route_service_provider.rb +29 -0
  199. data/test/api_stub/models/network/load_balancer.rb +137 -115
  200. data/test/api_stub/models/network/network_interface.rb +3 -2
  201. data/test/api_stub/models/network/network_security_group.rb +4 -3
  202. data/test/api_stub/models/network/public_ip.rb +5 -4
  203. data/test/api_stub/models/network/subnet.rb +3 -2
  204. data/test/api_stub/models/network/virtual_network.rb +3 -2
  205. data/test/api_stub/models/network/virtual_network_gateway.rb +26 -0
  206. data/test/api_stub/models/resources/deployment.rb +56 -50
  207. data/test/api_stub/models/resources/resource.rb +17 -14
  208. data/test/api_stub/models/resources/resource_group.rb +4 -18
  209. data/test/api_stub/models/storage/storageaccount.rb +8 -15
  210. data/test/api_stub/models/{network → traffic_manager}/traffic_manager_end_point.rb +4 -3
  211. data/test/api_stub/models/{network → traffic_manager}/traffic_manager_profile.rb +4 -3
  212. data/test/api_stub/requests/application_gateway/gateway.rb +431 -0
  213. data/test/api_stub/requests/compute/availability_set.rb +34 -23
  214. data/test/api_stub/requests/compute/virtual_machine.rb +73 -30
  215. data/test/api_stub/requests/dns/record_set.rb +6 -6
  216. data/test/api_stub/requests/dns/zone.rb +2 -2
  217. data/test/api_stub/requests/network/express_route_circuit.rb +100 -0
  218. data/test/api_stub/requests/network/express_route_circuit_peering.rb +62 -0
  219. data/test/api_stub/requests/network/express_route_service_provider.rb +30 -0
  220. data/test/api_stub/requests/network/load_balancer.rb +273 -251
  221. data/test/api_stub/requests/network/network_interface.rb +12 -16
  222. data/test/api_stub/requests/network/network_security_group.rb +12 -27
  223. data/test/api_stub/requests/network/public_ip.rb +7 -9
  224. data/test/api_stub/requests/network/subnet.rb +6 -8
  225. data/test/api_stub/requests/network/virtual_network.rb +6 -8
  226. data/test/api_stub/requests/network/virtual_network_gateway.rb +49 -0
  227. data/test/api_stub/requests/resources/deployment.rb +56 -11
  228. data/test/api_stub/requests/resources/resource.rb +6 -8
  229. data/test/api_stub/requests/resources/resource_group.rb +6 -8
  230. data/test/api_stub/requests/storage/storageaccount.rb +44 -31
  231. data/test/api_stub/requests/traffic_manager/traffic_manager_endpoint.rb +41 -0
  232. data/test/api_stub/requests/{network → traffic_manager}/traffic_manager_profile.rb +7 -5
  233. data/test/integration/application_gateway.rb +16 -8
  234. data/test/integration/availability_set.rb +1 -1
  235. data/test/integration/container.rb +2 -1
  236. data/test/integration/deployment.rb +54 -0
  237. data/test/integration/express_route_circuit.rb +80 -0
  238. data/test/integration/external_load_balancer.rb +7 -6
  239. data/test/integration/internal_load_balancer.rb +6 -5
  240. data/test/integration/network_interface.rb +2 -2
  241. data/test/integration/public_ip.rb +2 -2
  242. data/test/integration/record_set.rb +26 -8
  243. data/test/integration/resource_group.rb +39 -0
  244. data/test/integration/resource_tag.rb +62 -0
  245. data/test/integration/server.rb +6 -4
  246. data/test/integration/storage_account.rb +33 -5
  247. data/test/integration/subnet.rb +2 -2
  248. data/test/integration/traffic_manager.rb +12 -12
  249. data/test/integration/virtual_network.rb +6 -6
  250. data/test/integration/virtual_network_gateway.rb +101 -0
  251. data/test/integration/zone.rb +1 -1
  252. data/test/models/application_gateway/test_gateway.rb +57 -0
  253. data/test/models/{network/test_application_gateways.rb → application_gateway/test_gateways.rb} +10 -10
  254. data/test/models/compute/test_availability_set.rb +2 -1
  255. data/test/models/compute/test_availability_sets.rb +5 -4
  256. data/test/models/compute/test_server.rb +6 -5
  257. data/test/models/compute/test_servers.rb +3 -2
  258. data/test/models/dns/test_record_set.rb +27 -1
  259. data/test/models/dns/test_record_sets.rb +3 -2
  260. data/test/models/dns/test_zone.rb +1 -1
  261. data/test/models/dns/test_zones.rb +2 -1
  262. data/test/models/network/test_express_route_circuit.rb +58 -0
  263. data/test/models/network/test_express_route_circuit_peering.rb +59 -0
  264. data/test/models/network/test_express_route_circuit_peerings.rb +43 -0
  265. data/test/models/network/test_express_route_circuits.rb +42 -0
  266. data/test/models/network/test_express_route_service_providers.rb +30 -0
  267. data/test/models/network/test_load_balancer.rb +7 -12
  268. data/test/models/network/test_load_balancers.rb +4 -4
  269. data/test/models/network/test_network_interface.rb +10 -16
  270. data/test/models/network/test_network_interfaces.rb +3 -2
  271. data/test/models/network/test_network_security_group.rb +6 -8
  272. data/test/models/network/test_network_security_groups.rb +2 -1
  273. data/test/models/network/test_public_ip.rb +5 -6
  274. data/test/models/network/test_public_ips.rb +6 -6
  275. data/test/models/network/test_subnet.rb +9 -15
  276. data/test/models/network/test_subnets.rb +3 -2
  277. data/test/models/network/test_virtual_network.rb +10 -16
  278. data/test/models/network/test_virtual_network_gateway.rb +62 -0
  279. data/test/models/network/test_virtual_network_gateways.rb +42 -0
  280. data/test/models/network/test_virtual_networks.rb +3 -2
  281. data/test/models/resources/test_deployment.rb +2 -1
  282. data/test/models/resources/test_deployments.rb +2 -1
  283. data/test/models/resources/test_resource_group.rb +2 -1
  284. data/test/models/resources/test_resource_groups.rb +2 -1
  285. data/test/models/resources/test_resources.rb +2 -1
  286. data/test/models/storage/test_data_disk.rb +0 -6
  287. data/test/models/storage/test_storage_account.rb +29 -8
  288. data/test/models/storage/test_storage_accounts.rb +5 -5
  289. data/test/models/{network → traffic_manager}/test_traffic_manager_end_point.rb +4 -3
  290. data/test/models/traffic_manager/test_traffic_manager_end_points.rb +43 -0
  291. data/test/models/{network → traffic_manager}/test_traffic_manager_profile.rb +5 -4
  292. data/test/models/traffic_manager/test_traffic_manager_profiles.rb +42 -0
  293. data/test/requests/application_gateway/test_create_application_gateway.rb +51 -0
  294. data/test/requests/application_gateway/test_delete_application_gateway.rb +23 -0
  295. data/test/requests/application_gateway/test_list_application_gateways.rb +24 -0
  296. data/test/requests/compute/test_attach_data_disk_to_vm.rb +40 -123
  297. data/test/requests/compute/test_create_availability_set.rb +9 -11
  298. data/test/requests/compute/test_create_virtual_machine.rb +13 -29
  299. data/test/requests/compute/test_deallocate_virtual_machine.rb +7 -13
  300. data/test/requests/compute/test_delete_availability_set.rb +5 -11
  301. data/test/requests/compute/test_delete_virtual_machine.rb +7 -13
  302. data/test/requests/compute/test_detach_data_disk_from_vm.rb +13 -34
  303. data/test/requests/compute/test_generalize_virtual_machine.rb +7 -13
  304. data/test/requests/compute/test_get_availability_set.rb +24 -0
  305. data/test/requests/compute/test_get_virtual_machine.rb +8 -15
  306. data/test/requests/compute/test_get_vm_status.rb +8 -14
  307. data/test/requests/compute/test_list_availability_sets.rb +8 -14
  308. data/test/requests/compute/test_list_available_sizes_for_virtual_machine.rb +8 -15
  309. data/test/requests/compute/test_list_virtual_machines.rb +8 -14
  310. data/test/requests/compute/test_power_off_virtual_machine.rb +7 -13
  311. data/test/requests/compute/test_redeploy_virtual_machine.rb +7 -13
  312. data/test/requests/compute/test_restart_virtual_machine.rb +7 -13
  313. data/test/requests/compute/test_start_virtual_machine.rb +7 -13
  314. data/test/requests/dns/test_create_record_set.rb +8 -8
  315. data/test/requests/dns/test_create_zone.rb +6 -6
  316. data/test/requests/dns/test_delete_record_set.rb +2 -2
  317. data/test/requests/dns/test_delete_zone.rb +2 -2
  318. data/test/requests/dns/test_get_record_set.rb +46 -0
  319. data/test/requests/dns/test_get_zone.rb +46 -0
  320. data/test/requests/network/test_add_address_prefixes_in_virtual_network.rb +11 -27
  321. data/test/requests/network/test_add_dns_servers_in_virtual_network.rb +11 -27
  322. data/test/requests/network/test_add_security_rules.rb +11 -31
  323. data/test/requests/network/test_add_subnets_in_virtual_network.rb +11 -27
  324. data/test/requests/network/test_attach_network_security_group_to_subnet.rb +9 -16
  325. data/test/requests/network/test_attach_resource_to_nic.rb +15 -37
  326. data/test/requests/network/test_attach_route_table_to_subnet.rb +9 -16
  327. data/test/requests/network/test_check_for_public_ip.rb +10 -18
  328. data/test/requests/network/test_check_for_virtual_network.rb +10 -18
  329. data/test/requests/network/test_create_express_route_circuit.rb +39 -0
  330. data/test/requests/network/test_create_express_route_circuit_peering.rb +37 -0
  331. data/test/requests/network/test_create_load_balancer.rb +27 -34
  332. data/test/requests/network/test_create_network_interface.rb +16 -28
  333. data/test/requests/network/test_create_or_update_network_security_group.rb +38 -0
  334. data/test/requests/network/test_create_or_update_virtual_network.rb +20 -28
  335. data/test/requests/network/test_create_public_ip.rb +13 -22
  336. data/test/requests/network/test_create_subnet.rb +13 -22
  337. data/test/requests/network/test_create_virtual_network_gateway.rb +37 -0
  338. data/test/requests/network/test_delete_express_route_circuit.rb +24 -0
  339. data/test/requests/network/test_delete_express_route_circuit_peering.rb +24 -0
  340. data/test/requests/network/test_delete_load_balancer.rb +7 -13
  341. data/test/requests/network/test_delete_network_interface.rb +7 -13
  342. data/test/requests/network/test_delete_network_security_group.rb +6 -13
  343. data/test/requests/network/test_delete_public_ip.rb +7 -13
  344. data/test/requests/network/test_delete_subnet.rb +7 -13
  345. data/test/requests/network/test_delete_virtual_network.rb +7 -13
  346. data/test/requests/network/test_delete_virtual_network_gateway.rb +24 -0
  347. data/test/requests/network/test_detach_network_security_group_from_subnet.rb +9 -16
  348. data/test/requests/network/test_detach_resource_from_nic.rb +15 -34
  349. data/test/requests/network/test_detach_route_table_from_subnet.rb +9 -16
  350. data/test/requests/network/test_get_express_route_circuit.rb +24 -0
  351. data/test/requests/network/test_get_express_route_circuit_peering.rb +24 -0
  352. data/test/requests/network/test_get_network_interface.rb +8 -15
  353. data/test/requests/network/test_get_network_security_group.rb +9 -16
  354. data/test/requests/network/test_get_public_ip.rb +26 -0
  355. data/test/requests/network/test_get_subnet.rb +9 -16
  356. data/test/requests/network/test_get_virtual_network.rb +26 -0
  357. data/test/requests/network/test_get_virtual_network_gateway.rb +24 -0
  358. data/test/requests/network/test_list_express_route_circuit_peerings.rb +24 -0
  359. data/test/requests/network/test_list_express_route_circuits.rb +26 -0
  360. data/test/requests/network/test_list_express_route_service_providers.rb +24 -0
  361. data/test/requests/network/test_list_load_balancers.rb +8 -15
  362. data/test/requests/network/test_list_network_interfaces.rb +8 -15
  363. data/test/requests/network/test_list_network_security_groups.rb +9 -16
  364. data/test/requests/network/test_list_public_ips.rb +8 -15
  365. data/test/requests/network/test_list_subnets.rb +8 -15
  366. data/test/requests/network/test_list_virtual_network_gateways.rb +24 -0
  367. data/test/requests/network/test_list_virtual_networks.rb +8 -15
  368. data/test/requests/network/test_remove_address_prefixes_from_virtual_network.rb +11 -27
  369. data/test/requests/network/test_remove_dns_servers_from_virtual_network.rb +11 -27
  370. data/test/requests/network/test_remove_security_rule.rb +11 -31
  371. data/test/requests/network/test_remove_subnets_from_virtual_network.rb +11 -27
  372. data/test/requests/resources/test_create_deployment.rb +10 -27
  373. data/test/requests/resources/test_create_resource_group.rb +8 -15
  374. data/test/requests/resources/test_delete_deployment.rb +5 -11
  375. data/test/requests/resources/test_delete_resource_group.rb +8 -14
  376. data/test/requests/resources/test_delete_resource_tag.rb +12 -28
  377. data/test/requests/resources/test_list_deployments.rb +8 -15
  378. data/test/requests/resources/test_list_resource_groups.rb +8 -15
  379. data/test/requests/resources/test_list_tagged_resources.rb +8 -15
  380. data/test/requests/resources/test_tag_resource.rb +12 -28
  381. data/test/requests/storage/test_check_storage_account_name_availability.rb +14 -29
  382. data/test/requests/storage/test_create_storage_account.rb +13 -35
  383. data/test/requests/storage/test_delete_storage_account.rb +8 -14
  384. data/test/requests/storage/test_get_storage_access_keys.rb +7 -14
  385. data/test/requests/storage/test_list_storage_accounts.rb +12 -22
  386. data/test/requests/storage/test_list_storage_accounts_for_rg.rb +15 -29
  387. data/test/requests/traffic_manager/test_create_traffic_manager_endpoint.rb +25 -0
  388. data/test/requests/traffic_manager/test_create_traffic_manager_profile.rb +25 -0
  389. data/test/requests/traffic_manager/test_delete_traffic_manager_endpoint.rb +23 -0
  390. data/test/requests/traffic_manager/test_delete_traffic_manager_profile.rb +23 -0
  391. data/test/requests/traffic_manager/test_get_traffic_manager_endpoint.rb +24 -0
  392. data/test/requests/traffic_manager/test_get_traffic_manager_profile.rb +24 -0
  393. data/test/requests/traffic_manager/test_list_traffic_manager_profiles.rb +24 -0
  394. data/test/test_helper.rb +113 -4
  395. metadata +147 -86
  396. data/lib/fog/azurerm/models/network/application_gateway_backend_address_pool.rb +0 -24
  397. data/lib/fog/azurerm/models/network/application_gateway_backend_http_setting.rb +0 -30
  398. data/lib/fog/azurerm/models/network/application_gateway_frontend_ip_configuration.rb +0 -30
  399. data/lib/fog/azurerm/models/network/application_gateway_frontend_port.rb +0 -22
  400. data/lib/fog/azurerm/models/network/application_gateway_http_listener.rb +0 -37
  401. data/lib/fog/azurerm/models/network/application_gateway_ip_configuration.rb +0 -21
  402. data/lib/fog/azurerm/models/network/application_gateway_probe.rb +0 -32
  403. data/lib/fog/azurerm/models/network/application_gateway_request_routing_rule.rb +0 -35
  404. data/lib/fog/azurerm/models/network/application_gateway_ssl_certificate.rb +0 -26
  405. data/lib/fog/azurerm/models/network/application_gateway_url_path_map.rb +0 -32
  406. data/lib/fog/azurerm/models/network/traffic_manager_end_point.rb +0 -63
  407. data/lib/fog/azurerm/models/network/traffic_manager_end_points.rb +0 -29
  408. data/lib/fog/azurerm/models/network/traffic_manager_profile.rb +0 -59
  409. data/lib/fog/azurerm/models/network/traffic_manager_profiles.rb +0 -24
  410. data/lib/fog/azurerm/requests/network/create_traffic_manager_endpoint.rb +0 -78
  411. data/lib/fog/azurerm/requests/network/create_traffic_manager_profile.rb +0 -127
  412. data/lib/fog/azurerm/requests/network/delete_application_gateway.rb +0 -27
  413. data/lib/fog/azurerm/requests/network/delete_traffic_manager_endpoint.rb +0 -37
  414. data/lib/fog/azurerm/requests/network/delete_traffic_manager_profile.rb +0 -37
  415. data/lib/fog/azurerm/requests/network/get_traffic_manager_profile.rb +0 -96
  416. data/lib/fog/azurerm/requests/network/list_application_gateways.rb +0 -31
  417. data/lib/fog/azurerm/requests/network/list_traffic_manager_profiles.rb +0 -98
  418. data/test/api_stub/models/storage/data_disk.rb +0 -30
  419. data/test/api_stub/requests/network/application_gateway.rb +0 -433
  420. data/test/api_stub/requests/network/traffic_manager_endpoint.rb +0 -25
  421. data/test/models/network/test_application_gateway.rb +0 -62
  422. data/test/models/network/test_traffic_manager_end_points.rb +0 -42
  423. data/test/models/network/test_traffic_manager_profiles.rb +0 -41
  424. data/test/requests/network/test_create_application_gateway.rb +0 -61
  425. data/test/requests/network/test_create_network_security_group.rb +0 -45
  426. data/test/requests/network/test_create_traffic_manager_endpoint.rb +0 -32
  427. data/test/requests/network/test_create_traffic_manager_profile.rb +0 -32
  428. data/test/requests/network/test_delete_application_gateway.rb +0 -30
  429. data/test/requests/network/test_delete_traffic_manager_endpoint.rb +0 -28
  430. data/test/requests/network/test_delete_traffic_manager_profile.rb +0 -28
  431. data/test/requests/network/test_get_traffic_manager_profile.rb +0 -29
  432. data/test/requests/network/test_list_application_gateways.rb +0 -31
  433. data/test/requests/network/test_list_traffic_manager_profiles.rb +0 -29
@@ -0,0 +1,29 @@
1
+ require 'fog/core/collection'
2
+ require 'fog/azurerm/models/network/express_route_circuit'
3
+
4
+ module Fog
5
+ module Network
6
+ class AzureRM
7
+ # ExpressRouteCircuit collection class for Network Service
8
+ class ExpressRouteCircuits < Fog::Collection
9
+ model Fog::Network::AzureRM::ExpressRouteCircuit
10
+ attribute :resource_group
11
+
12
+ def all
13
+ requires :resource_group
14
+ express_route_circuits = []
15
+ service.list_express_route_circuits(resource_group).each do |circuit|
16
+ express_route_circuits << Fog::Network::AzureRM::ExpressRouteCircuit.parse(circuit)
17
+ end
18
+ load(express_route_circuits)
19
+ end
20
+
21
+ def get(resource_group_name, name)
22
+ circuit = service.get_express_route_circuit(resource_group_name, name)
23
+ express_route_circuit = Fog::Network::AzureRM::ExpressRouteCircuit.new(service: service)
24
+ express_route_circuit.merge_attributes(Fog::Network::AzureRM::ExpressRouteCircuit.parse(circuit))
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ module Fog
2
+ module Network
3
+ class AzureRM
4
+ # Express Route Service Provider model class for Network Service
5
+ class ExpressRouteServiceProvider < Fog::Model
6
+ identity :name
7
+ attribute :id
8
+ attribute :peering_locations
9
+ attribute :bandwidths_offered
10
+
11
+ def self.parse(service_provider)
12
+ hash = {}
13
+ hash['id'] = service_provider.id
14
+ hash['name'] = service_provider.name
15
+
16
+ hash['peering_locations'] = []
17
+ service_provider.peering_locations.each do |peering_location|
18
+ hash['peering_locations'] << peering_location
19
+ end unless service_provider.peering_locations.nil?
20
+ hash['bandwidths_offered'] = []
21
+ service_provider.bandwidths_offered.each do |bandwidth_offered|
22
+ hash['bandwidths_offered'] << bandwidth_offered
23
+ end unless service_provider.bandwidths_offered.nil?
24
+ hash
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,21 @@
1
+ require 'fog/core/collection'
2
+ require 'fog/azurerm/models/network/express_route_service_provider'
3
+
4
+ module Fog
5
+ module Network
6
+ class AzureRM
7
+ # ExpressRouteServiceProvider collection class for Network Service
8
+ class ExpressRouteServiceProviders < Fog::Collection
9
+ model Fog::Network::AzureRM::ExpressRouteServiceProvider
10
+
11
+ def all
12
+ express_route_service_providers = []
13
+ service.list_express_route_service_providers.each do |service_provider|
14
+ express_route_service_providers << Fog::Network::AzureRM::ExpressRouteServiceProvider.parse(service_provider)
15
+ end
16
+ load(express_route_service_providers)
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -13,21 +13,11 @@ module Fog
13
13
 
14
14
  def self.parse(frontend_ip_configuration)
15
15
  hash = {}
16
- hash['name'] = frontend_ip_configuration['name']
17
- subnet = frontend_ip_configuration['properties']['subnet']
18
- hash['subnet_id'] = subnet['id'] unless subnet.nil?
19
- private_ip_address = frontend_ip_configuration['properties']['private_ipaddress']
20
- unless private_ip_address.nil?
21
- hash['private_ipaddress'] = private_ip_address
22
- end
23
- private_ipallocation_method = frontend_ip_configuration['properties']['privateIPAllocationMethod']
24
- unless private_ipallocation_method.nil?
25
- hash['private_ipallocation_method'] = private_ipallocation_method
26
- end
27
- public_ip_address = frontend_ip_configuration['properties']['publicIPAddress']
28
- unless public_ip_address.nil?
29
- hash['public_ip_address_id'] = public_ip_address['id']
30
- end
16
+ hash['name'] = frontend_ip_configuration.name
17
+ hash['subnet_id'] = frontend_ip_configuration.subnet.id unless frontend_ip_configuration.subnet.nil?
18
+ hash['private_ipaddress'] = frontend_ip_configuration.private_ipaddress if frontend_ip_configuration.respond_to?(:private_ipaddress)
19
+ hash['private_ipallocation_method'] = frontend_ip_configuration.private_ipallocation_method unless frontend_ip_configuration.private_ipallocation_method.nil?
20
+ hash['public_ip_address_id'] = frontend_ip_configuration.public_ipaddress unless frontend_ip_configuration.public_ipaddress.nil?
31
21
  hash
32
22
  end
33
23
  end
@@ -11,14 +11,13 @@ module Fog
11
11
  attribute :backend_port
12
12
 
13
13
  def self.parse(inbound_nat_pool)
14
- inbound_nat_pool_prop = inbound_nat_pool['properties']
15
14
  hash = {}
16
- hash['id'] = inbound_nat_pool['id']
17
- hash['name'] = inbound_nat_pool['name']
18
- hash['protocol'] = inbound_nat_pool_prop['protocol']
19
- hash['frontend_port_range_start'] = inbound_nat_pool_prop['frontendPortRangeStart']
20
- hash['frontend_port_range_end'] = inbound_nat_pool_prop['frontendPortRangeEnd']
21
- hash['backend_port'] = inbound_nat_pool_prop['backendPort']
15
+ hash['id'] = inbound_nat_pool.id
16
+ hash['name'] = inbound_nat_pool.name
17
+ hash['protocol'] = inbound_nat_pool.protocol
18
+ hash['frontend_port_range_start'] = inbound_nat_pool.frontend_port_range_start
19
+ hash['frontend_port_range_end'] = inbound_nat_pool.frontend_port_range_end
20
+ hash['backend_port'] = inbound_nat_pool.backend_port
22
21
  hash
23
22
  end
24
23
  end
@@ -11,16 +11,13 @@ module Fog
11
11
  attribute :backend_port
12
12
 
13
13
  def self.parse(inbound_nat_rule)
14
- inbound_nat_rule_prop = inbound_nat_rule['properties']
15
14
  hash = {}
16
- hash['id'] = inbound_nat_rule['id']
17
- hash['name'] = inbound_nat_rule['name']
18
- unless inbound_nat_rule_prop['frontendIPConfiguration'].nil?
19
- hash['frontend_ip_configuration_id'] = inbound_nat_rule_prop['frontendIPConfiguration']['id']
20
- end
21
- hash['protocol'] = inbound_nat_rule_prop['protocol']
22
- hash['frontend_port'] = inbound_nat_rule_prop['frontendPort']
23
- hash['backend_port'] = inbound_nat_rule_prop['backendPort']
15
+ hash['id'] = inbound_nat_rule.id
16
+ hash['name'] = inbound_nat_rule.name
17
+ hash['frontend_ip_configuration_id'] = inbound_nat_rule.frontend_ipconfiguration.id unless inbound_nat_rule.frontend_ipconfiguration.nil?
18
+ hash['protocol'] = inbound_nat_rule.protocol
19
+ hash['frontend_port'] = inbound_nat_rule.frontend_port
20
+ hash['backend_port'] = inbound_nat_rule.backend_port
24
21
  hash
25
22
  end
26
23
  end
@@ -16,44 +16,42 @@ module Fog
16
16
 
17
17
  # @param [Object] load_balancer
18
18
  def self.parse(load_balancer)
19
- load_balancer_properties = load_balancer['properties']
20
-
21
19
  hash = {}
22
- hash['id'] = load_balancer['id']
23
- hash['name'] = load_balancer['name']
24
- hash['location'] = load_balancer['location']
25
- hash['resource_group'] = load_balancer['id'].split('/')[4]
26
- hash['backend_address_pool_names'] = load_balancer_properties['backendAddressPools'].map { |item| item['name'] } unless load_balancer_properties['backendAddressPools'].nil?
20
+ hash['id'] = load_balancer.id
21
+ hash['name'] = load_balancer.name
22
+ hash['location'] = load_balancer.location
23
+ hash['resource_group'] = get_resource_group_from_id(load_balancer.id)
24
+ hash['backend_address_pool_names'] = load_balancer.backend_address_pools.map(&:id) unless load_balancer.backend_address_pools.nil?
27
25
 
28
26
  hash['frontend_ip_configurations'] = []
29
- load_balancer_properties['frontendIPConfigurations'].each do |fic|
27
+ load_balancer.frontend_ipconfigurations.each do |fic|
30
28
  frontend_ip_configuration = Fog::Network::AzureRM::FrontendIPConfiguration.new
31
29
  hash['frontend_ip_configurations'] << frontend_ip_configuration.merge_attributes(Fog::Network::AzureRM::FrontendIPConfiguration.parse(fic))
32
- end unless load_balancer_properties['frontendIPConfigurations'].nil?
30
+ end unless load_balancer.frontend_ipconfigurations.nil?
33
31
 
34
32
  hash['load_balancing_rules'] = []
35
- load_balancer_properties['loadBalancingRules'].each do |lbr|
33
+ load_balancer.load_balancing_rules.each do |lbr|
36
34
  load_balancing_rule = Fog::Network::AzureRM::LoadBalangcingRule.new
37
35
  hash['load_balancing_rules'] << load_balancing_rule.merge_attributes(Fog::Network::AzureRM::LoadBalangcingRule.parse(lbr))
38
- end unless load_balancer_properties['loadBalancingRules'].nil?
36
+ end unless load_balancer.load_balancing_rules.nil?
39
37
 
40
38
  hash['probes'] = []
41
- load_balancer_properties['probes'].each do |prb|
39
+ load_balancer.probes.each do |prb|
42
40
  prob = Fog::Network::AzureRM::Probe.new
43
41
  hash['probes'] << prob.merge_attributes(Fog::Network::AzureRM::Probe.parse(prb))
44
- end unless load_balancer_properties['probes'].nil?
42
+ end unless load_balancer.probes.nil?
45
43
 
46
44
  hash['inbound_nat_rules'] = []
47
- load_balancer_properties['inboundNatRules'].each do |inr|
45
+ load_balancer.inbound_nat_rules.each do |inr|
48
46
  inbound_nat_rule = Fog::Network::AzureRM::InboundNatRule.new
49
47
  hash['inbound_nat_rules'] << inbound_nat_rule.merge_attributes(Fog::Network::AzureRM::InboundNatRule.parse(inr))
50
- end unless load_balancer_properties['inboundNatRules'].nil?
48
+ end unless load_balancer.inbound_nat_rules.nil?
51
49
 
52
- hash['inbound_nat_rules'] = []
53
- load_balancer_properties['inboundNatPools'].each do |inp|
50
+ hash['inbound_nat_pools'] = []
51
+ load_balancer.inbound_nat_pools.each do |inp|
54
52
  inbound_nat_pool = Fog::Network::AzureRM::InboundNatPool.new
55
- hash['inbound_nat_rules'] << inbound_nat_pool.merge_attributes(Fog::Network::AzureRM::InboundNatPool.parse(inp))
56
- end unless load_balancer_properties['inboundNatPools'].nil?
53
+ hash['inbound_nat_pools'] << inbound_nat_pool.merge_attributes(Fog::Network::AzureRM::InboundNatPool.parse(inp))
54
+ end unless load_balancer.inbound_nat_pools.nil?
57
55
 
58
56
  hash
59
57
  end
@@ -16,24 +16,19 @@ module Fog
16
16
  attribute :load_distribution
17
17
 
18
18
  def self.parse(load_balancing_rule)
19
- load_balancing_rule_prop = load_balancing_rule['properties']
20
19
  hash = {}
21
- hash['id'] = load_balancing_rule['id']
22
- hash['name'] = load_balancing_rule['name']
23
- unless load_balancing_rule_prop['frontendIPConfiguration'].nil?
24
- hash['frontend_ip_configuration_id'] = load_balancing_rule_prop['frontendIPConfiguration']['id']
25
- end
26
- unless load_balancing_rule_prop['backendAddressPool'].nil?
27
- hash['backend_address_pool_id'] = load_balancing_rule_prop['backendAddressPool']['id']
28
- end
20
+ hash['id'] = load_balancing_rule.id
21
+ hash['name'] = load_balancing_rule.name
22
+ hash['frontend_ip_configuration_id'] = load_balancing_rule.frontend_ipconfiguration.id unless load_balancing_rule.frontend_ipconfiguration.nil?
23
+ hash['backend_address_pool_id'] = load_balancing_rule.backend_address_pool.id unless load_balancing_rule.backend_address_pool.nil?
29
24
 
30
- hash['protocol'] = load_balancing_rule_prop['protocol']
31
- hash['frontend_port'] = load_balancing_rule_prop['frontendPort']
32
- hash['backend_port'] = load_balancing_rule_prop['backendPort']
33
- hash['probe_id'] = load_balancing_rule_prop['probe']['id'] unless load_balancing_rule_prop['probe'].nil?
34
- hash['enable_floating_ip'] = load_balancing_rule_prop['enableFloatingIP']
35
- hash['idle_timeout_in_minutes'] = load_balancing_rule_prop['idleTimeoutInMinutes']
36
- hash['load_distribution'] = load_balancing_rule_prop['loadDistribution']
25
+ hash['protocol'] = load_balancing_rule.protocol
26
+ hash['frontend_port'] = load_balancing_rule.frontend_port
27
+ hash['backend_port'] = load_balancing_rule.backend_port
28
+ hash['probe_id'] = load_balancing_rule.probe.id unless load_balancing_rule.probe.nil?
29
+ hash['enable_floating_ip'] = load_balancing_rule.enable_floating_ip
30
+ hash['idle_timeout_in_minutes'] = load_balancing_rule.idle_timeout_in_minutes
31
+ hash['load_distribution'] = load_balancing_rule.load_distribution
37
32
  hash
38
33
  end
39
34
  end
@@ -24,34 +24,34 @@ module Fog
24
24
  attribute :internal_fqd
25
25
 
26
26
  def self.parse(nic)
27
- nic_properties = nic['properties']
28
- nic_ip_configuration = nic_properties['ipConfigurations'][0]
29
27
  hash = {}
30
- hash['id'] = nic['id']
31
- hash['name'] = nic['name']
32
- hash['location'] = nic['location']
33
- hash['resource_group'] = nic['id'].split('/')[4]
34
- hash['virtual_machine_id'] = nic_properties['virtualMachine']['id'] unless nic_properties['virtualMachine'].nil?
35
- hash['mac_address'] = nic_properties['macAddress'] unless nic_properties['macAddress'].nil?
28
+ hash['id'] = nic.id
29
+ hash['name'] = nic.name
30
+ hash['location'] = nic.location
31
+ hash['resource_group'] = get_resource_from_resource_id(nic.id, RESOURCE_GROUP_NAME)
32
+ hash['virtual_machine_id'] = nic.virtual_machine.id unless nic.virtual_machine.nil?
33
+ hash['mac_address'] = nic.mac_address unless nic.mac_address.nil?
36
34
  hash['network_security_group_id'] = nil
37
- hash['network_security_group_id'] = nic_properties['networkSecurityGroup']['id'] unless nic_properties['networkSecurityGroup'].nil?
38
- unless nic_ip_configuration.nil?
39
- nic_ip_configuration_properties = nic_ip_configuration['properties']
40
- hash['ip_configuration_name'] = nic_ip_configuration['name']
41
- hash['ip_configuration_id'] = nic_ip_configuration['id']
42
- hash['subnet_id'] = nic_ip_configuration_properties['subnet']['id'] unless nic_ip_configuration_properties['subnet'].nil?
43
- hash['private_ip_allocation_method'] = nic_ip_configuration_properties['privateIPAllocationMethod']
44
- hash['private_ip_address'] = nic_ip_configuration_properties['privateIPAddress']
35
+ hash['network_security_group_id'] = nic.network_security_group.id unless nic.network_security_group.nil?
36
+ ip_configuration = nic.ip_configurations[0] unless nic.ip_configurations.nil?
37
+ unless ip_configuration.nil?
38
+ hash['ip_configuration_name'] = ip_configuration.name
39
+ hash['ip_configuration_id'] = ip_configuration.id
40
+ hash['subnet_id'] = ip_configuration.subnet.id unless ip_configuration.subnet.nil?
41
+ hash['private_ip_allocation_method'] = ip_configuration.private_ipallocation_method
42
+ hash['private_ip_address'] = ip_configuration.private_ipaddress
45
43
  hash['public_ip_address_id'] = nil
46
- hash['public_ip_address_id'] = nic_ip_configuration_properties['publicIPAddress']['id'] unless nic_ip_configuration_properties['publicIPAddress'].nil?
47
- hash['load_balancer_backend_address_pools_ids'] = nic_ip_configuration_properties['loadBalancerBackendAddressPools'].map { |item| item['id'] } unless nic_ip_configuration_properties['loadBalancerBackendAddressPools'].nil?
48
- hash['load_balancer_inbound_nat_rules_ids'] = nic_ip_configuration_properties['loadBalancerInboundNatRules'].map { |item| item['id'] } unless nic_ip_configuration_properties['loadBalancerInboundNatRules'].nil?
44
+ hash['public_ip_address_id'] = ip_configuration.public_ipaddress.id unless ip_configuration.public_ipaddress.nil?
45
+ hash['load_balancer_backend_address_pools_ids'] = ip_configuration.load_balancer_backend_address_pools.map(&:id) unless ip_configuration.load_balancer_backend_address_pools.nil?
46
+ hash['load_balancer_inbound_nat_rules_ids'] = ip_configuration.load_balancer_inbound_nat_rules.map(&:id) unless ip_configuration.load_balancer_inbound_nat_rules.nil?
47
+ end
48
+ nic_dns_settings = nic.dns_settings
49
+ unless nic_dns_settings.nil?
50
+ hash['dns_servers'] = nic_dns_settings.dns_servers
51
+ hash['applied_dns_servers'] = nic_dns_settings.applied_dns_servers
52
+ hash['internal_dns_name_label'] = nic_dns_settings.internal_dns_name_label
53
+ hash['internal_fqd'] = nic_dns_settings.internal_fqdn
49
54
  end
50
-
51
- hash['dns_servers'] = nic_properties['dnsSettings']['dnsServers']
52
- hash['applied_dns_servers'] = nic_properties['appliedDnsServers']
53
- hash['internal_dns_name_label'] = nic_properties['internalDnsNameLabel']
54
- hash['internal_fqd'] = nic_properties['internalFqd']
55
55
  hash
56
56
  end
57
57
 
@@ -14,21 +14,21 @@ module Fog
14
14
 
15
15
  def self.parse(nsg)
16
16
  hash = {}
17
- hash['id'] = nsg['id']
18
- hash['name'] = nsg['name']
19
- hash['resource_group'] = nsg['id'].split('/')[4]
20
- hash['location'] = nsg['location']
21
- hash['network_interfaces_ids'] = nsg['properties']['networkInterfaces'].map { |item| item['id'] } unless nsg['properties']['networkInterfaces'].nil?
22
- hash['subnets_ids'] = nsg['properties']['subnets'].map { |item| item['id'] } unless nsg['properties']['subnets'].nil?
17
+ hash['id'] = nsg.id
18
+ hash['name'] = nsg.name
19
+ hash['resource_group'] = get_resource_from_resource_id(nsg.id, RESOURCE_GROUP_NAME)
20
+ hash['location'] = nsg.location
21
+ hash['network_interfaces_ids'] = nsg.network_interfaces.map(&:id) unless nsg.network_interfaces.nil?
22
+ hash['subnets_ids'] = nsg.subnets.map(&:id) unless nsg.subnets.nil?
23
23
  hash['security_rules'] = []
24
24
  hash['default_security_rules'] = []
25
25
 
26
- nsg['properties']['securityRules'].each do |sr|
26
+ nsg.security_rules.each do |sr|
27
27
  security_rule = Fog::Network::AzureRM::NetworkSecurityRule.new
28
28
  hash['security_rules'] << security_rule.merge_attributes(Fog::Network::AzureRM::NetworkSecurityRule.parse(sr))
29
- end unless nsg['properties']['securityRules'].nil?
29
+ end unless nsg.security_rules.nil?
30
30
 
31
- nsg['properties']['defaultSecurityRules'].each do |dsr|
31
+ nsg.default_security_rules.each do |dsr|
32
32
  security_rule = Fog::Network::AzureRM::NetworkSecurityRule.new
33
33
  hash['default_security_rules'] << security_rule.merge_attributes(Fog::Network::AzureRM::NetworkSecurityRule.parse(dsr))
34
34
  end
@@ -19,19 +19,19 @@ module Fog
19
19
 
20
20
  def self.parse(nsr)
21
21
  hash = {}
22
- hash['id'] = nsr['id']
23
- hash['name'] = nsr['name']
24
- hash['resource_group'] = nsr['id'].split('/')[4]
25
- hash['network_security_group_name'] = nsr['id'].split('/')[8]
26
- hash['description'] = nsr['properties']['description']
27
- hash['protocol'] = nsr['properties']['protocol']
28
- hash['source_port_range'] = nsr['properties']['sourcePortRange']
29
- hash['destination_port_range'] = nsr['properties']['destinationPortRange']
30
- hash['source_address_prefix'] = nsr['properties']['sourceAddressPrefix']
31
- hash['destination_address_prefix'] = nsr['properties']['destinationAddressPrefix']
32
- hash['access'] = nsr['properties']['access']
33
- hash['priority'] = nsr['properties']['priority']
34
- hash['direction'] = nsr['properties']['direction']
22
+ hash['id'] = nsr.id
23
+ hash['name'] = nsr.name
24
+ hash['resource_group'] = get_resource_from_resource_id(nsr.id, RESOURCE_GROUP_NAME)
25
+ hash['network_security_group_name'] = get_resource_from_resource_id(nsr.id, RESOURCE_NAME)
26
+ hash['description'] = nsr.description
27
+ hash['protocol'] = nsr.protocol
28
+ hash['source_port_range'] = nsr.source_port_range
29
+ hash['destination_port_range'] = nsr.destination_port_range
30
+ hash['source_address_prefix'] = nsr.source_address_prefix
31
+ hash['destination_address_prefix'] = nsr.destination_address_prefix
32
+ hash['access'] = nsr.access
33
+ hash['priority'] = nsr.priority
34
+ hash['direction'] = nsr.direction
35
35
  hash
36
36
  end
37
37
  end
@@ -12,15 +12,14 @@ module Fog
12
12
  attribute :number_of_probes
13
13
 
14
14
  def self.parse(probe)
15
- probe_prop = probe['properties']
16
15
  hash = {}
17
- hash['id'] = probe['id']
18
- hash['name'] = probe['name']
19
- hash['protocol'] = probe_prop['protocol']
20
- hash['port'] = probe_prop['port']
21
- hash['request_path'] = probe_prop['requestPath']
22
- hash['interval_in_seconds'] = probe_prop['intervalInSeconds']
23
- hash['number_of_probes'] = probe_prop['numberOfProbes']
16
+ hash['id'] = probe.id
17
+ hash['name'] = probe.name
18
+ hash['protocol'] = probe.protocol
19
+ hash['port'] = probe.port
20
+ hash['request_path'] = probe.request_path
21
+ hash['interval_in_seconds'] = probe.interval_in_seconds
22
+ hash['number_of_probes'] = probe.number_of_probes
24
23
  hash
25
24
  end
26
25
  end
@@ -15,22 +15,21 @@ module Fog
15
15
  attribute :fqdn
16
16
  attribute :reverse_fqdn
17
17
 
18
- def self.parse(pip)
19
- pip_properties = pip['properties']
18
+ def self.parse(public_ip)
20
19
  hash = {}
21
- hash['id'] = pip['id']
22
- hash['name'] = pip['name']
23
- hash['location'] = pip['location']
24
- hash['resource_group'] = pip['id'].split('/')[4]
25
- hash['public_ip_allocation_method'] = pip_properties['publicIPAllocationMethod']
26
- hash['ip_address'] = pip_properties['ipAddress']
27
- hash['idle_timeout_in_minutes'] = pip_properties['idleTimeoutInMinutes']
28
- hash['ip_configuration_id'] = pip_properties['ipConfiguration']['id'] unless pip_properties['ipConfiguration'].nil?
20
+ hash['id'] = public_ip.id
21
+ hash['name'] = public_ip.name
22
+ hash['location'] = public_ip.location
23
+ hash['resource_group'] = get_resource_group_from_id(public_ip.id)
24
+ hash['public_ip_allocation_method'] = public_ip.public_ipallocation_method
25
+ hash['ip_address'] = public_ip.ip_address
26
+ hash['idle_timeout_in_minutes'] = public_ip.idle_timeout_in_minutes
27
+ hash['ip_configuration_id'] = public_ip.ip_configuration.id unless public_ip.ip_configuration.nil?
29
28
 
30
- unless pip_properties['dnsSettings'].nil?
31
- hash['domain_name_label'] = pip_properties['dnsSettings']['domainNameLabel']
32
- hash['fqdn'] = pip_properties['dnsSettings']['fqdn']
33
- hash['reverse_fqdn'] = pip_properties['dnsSettings']['reverseFqdn']
29
+ unless public_ip.dns_settings.nil?
30
+ hash['domain_name_label'] = public_ip.dns_settings.domain_name_label
31
+ hash['fqdn'] = public_ip.dns_settings.fqdn
32
+ hash['reverse_fqdn'] = public_ip.dns_settings.reverse_fqdn
34
33
  end
35
34
 
36
35
  hash
@@ -41,8 +40,8 @@ module Fog
41
40
  requires :public_ip_allocation_method
42
41
  requires :location
43
42
  requires :resource_group
44
- pip = service.create_public_ip(resource_group, name, location, public_ip_allocation_method)
45
- merge_attributes(Fog::Network::AzureRM::PublicIp.parse(pip))
43
+ public_ip = service.create_public_ip(resource_group, name, location, public_ip_allocation_method)
44
+ merge_attributes(Fog::Network::AzureRM::PublicIp.parse(public_ip))
46
45
  end
47
46
 
48
47
  def destroy