far-gem 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (771) hide show
  1. checksums.yaml +7 -0
  2. data/.arclint +8 -0
  3. data/.codeclimate.yml +17 -0
  4. data/.gitignore +6 -0
  5. data/.hound.yml +2 -0
  6. data/.rubocop.yml +38 -0
  7. data/.travis.yml +47 -0
  8. data/CHANGELOG.md +356 -0
  9. data/CONTRIBUTING.md +40 -0
  10. data/CONTRIBUTORS.md +12 -0
  11. data/Gemfile +3 -0
  12. data/LICENSE.md +20 -0
  13. data/README.md +96 -0
  14. data/fog-azure-rm.gemspec +37 -0
  15. data/lib/fog/azurerm.rb +88 -0
  16. data/lib/fog/azurerm/application_gateway.rb +75 -0
  17. data/lib/fog/azurerm/async_response.rb +44 -0
  18. data/lib/fog/azurerm/compute.rb +102 -0
  19. data/lib/fog/azurerm/config.rb +1 -0
  20. data/lib/fog/azurerm/constants.rb +71 -0
  21. data/lib/fog/azurerm/credentials.rb +40 -0
  22. data/lib/fog/azurerm/dns.rb +70 -0
  23. data/lib/fog/azurerm/docs/application_gateway.md +245 -0
  24. data/lib/fog/azurerm/docs/compute.md +499 -0
  25. data/lib/fog/azurerm/docs/dns.md +149 -0
  26. data/lib/fog/azurerm/docs/key_vault.md +91 -0
  27. data/lib/fog/azurerm/docs/network.md +1132 -0
  28. data/lib/fog/azurerm/docs/resources.md +178 -0
  29. data/lib/fog/azurerm/docs/sql.md +170 -0
  30. data/lib/fog/azurerm/docs/storage.md +398 -0
  31. data/lib/fog/azurerm/docs/structure.md +53 -0
  32. data/lib/fog/azurerm/docs/traffic_manager.md +161 -0
  33. data/lib/fog/azurerm/key_vault.rb +51 -0
  34. data/lib/fog/azurerm/models/application_gateway/backend_address_pool.rb +24 -0
  35. data/lib/fog/azurerm/models/application_gateway/backend_http_setting.rb +28 -0
  36. data/lib/fog/azurerm/models/application_gateway/frontend_ip_configuration.rb +26 -0
  37. data/lib/fog/azurerm/models/application_gateway/frontend_port.rb +20 -0
  38. data/lib/fog/azurerm/models/application_gateway/gateway.rb +617 -0
  39. data/lib/fog/azurerm/models/application_gateway/gateways.rb +30 -0
  40. data/lib/fog/azurerm/models/application_gateway/http_listener.rb +30 -0
  41. data/lib/fog/azurerm/models/application_gateway/ip_configuration.rb +26 -0
  42. data/lib/fog/azurerm/models/application_gateway/probe.rb +30 -0
  43. data/lib/fog/azurerm/models/application_gateway/request_routing_rule.rb +27 -0
  44. data/lib/fog/azurerm/models/application_gateway/ssl_certificate.rb +24 -0
  45. data/lib/fog/azurerm/models/application_gateway/url_path_map.rb +30 -0
  46. data/lib/fog/azurerm/models/compute/availability_set.rb +67 -0
  47. data/lib/fog/azurerm/models/compute/availability_sets.rb +35 -0
  48. data/lib/fog/azurerm/models/compute/caching_types.rb +13 -0
  49. data/lib/fog/azurerm/models/compute/creation_data.rb +23 -0
  50. data/lib/fog/azurerm/models/compute/data_disk.rb +26 -0
  51. data/lib/fog/azurerm/models/compute/disk_create_option.rb +16 -0
  52. data/lib/fog/azurerm/models/compute/disk_create_option_types.rb +13 -0
  53. data/lib/fog/azurerm/models/compute/encryption_settings.rb +29 -0
  54. data/lib/fog/azurerm/models/compute/image_disk_reference.rb +15 -0
  55. data/lib/fog/azurerm/models/compute/managed_disk.rb +77 -0
  56. data/lib/fog/azurerm/models/compute/managed_disks.rb +43 -0
  57. data/lib/fog/azurerm/models/compute/operation_status_response.rb +18 -0
  58. data/lib/fog/azurerm/models/compute/server.rb +268 -0
  59. data/lib/fog/azurerm/models/compute/servers.rb +47 -0
  60. data/lib/fog/azurerm/models/compute/virtual_machine_extension.rb +76 -0
  61. data/lib/fog/azurerm/models/compute/virtual_machine_extensions.rb +31 -0
  62. data/lib/fog/azurerm/models/dns/a_record.rb +15 -0
  63. data/lib/fog/azurerm/models/dns/cname_record.rb +15 -0
  64. data/lib/fog/azurerm/models/dns/record_set.rb +103 -0
  65. data/lib/fog/azurerm/models/dns/record_sets.rb +34 -0
  66. data/lib/fog/azurerm/models/dns/zone.rb +58 -0
  67. data/lib/fog/azurerm/models/dns/zones.rb +29 -0
  68. data/lib/fog/azurerm/models/key_vault/access_policy_entry.rb +27 -0
  69. data/lib/fog/azurerm/models/key_vault/vault.rb +78 -0
  70. data/lib/fog/azurerm/models/key_vault/vaults.rb +27 -0
  71. data/lib/fog/azurerm/models/network/express_route_circuit.rb +86 -0
  72. data/lib/fog/azurerm/models/network/express_route_circuit_authorization.rb +50 -0
  73. data/lib/fog/azurerm/models/network/express_route_circuit_authorizations.rb +28 -0
  74. data/lib/fog/azurerm/models/network/express_route_circuit_peering.rb +91 -0
  75. data/lib/fog/azurerm/models/network/express_route_circuit_peerings.rb +27 -0
  76. data/lib/fog/azurerm/models/network/express_route_circuits.rb +30 -0
  77. data/lib/fog/azurerm/models/network/express_route_service_provider.rb +29 -0
  78. data/lib/fog/azurerm/models/network/express_route_service_providers.rb +18 -0
  79. data/lib/fog/azurerm/models/network/frontend_ip_configuration.rb +27 -0
  80. data/lib/fog/azurerm/models/network/inbound_nat_pool.rb +26 -0
  81. data/lib/fog/azurerm/models/network/inbound_nat_rule.rb +26 -0
  82. data/lib/fog/azurerm/models/network/ipallocation_method.rb +12 -0
  83. data/lib/fog/azurerm/models/network/load_balancer.rb +249 -0
  84. data/lib/fog/azurerm/models/network/load_balancers.rb +36 -0
  85. data/lib/fog/azurerm/models/network/load_balancing_rule.rb +37 -0
  86. data/lib/fog/azurerm/models/network/local_network_gateway.rb +62 -0
  87. data/lib/fog/azurerm/models/network/local_network_gateways.rb +27 -0
  88. data/lib/fog/azurerm/models/network/network_interface.rb +121 -0
  89. data/lib/fog/azurerm/models/network/network_interfaces.rb +30 -0
  90. data/lib/fog/azurerm/models/network/network_security_group.rb +114 -0
  91. data/lib/fog/azurerm/models/network/network_security_groups.rb +30 -0
  92. data/lib/fog/azurerm/models/network/network_security_rule.rb +66 -0
  93. data/lib/fog/azurerm/models/network/network_security_rules.rb +31 -0
  94. data/lib/fog/azurerm/models/network/path_rule.rb +30 -0
  95. data/lib/fog/azurerm/models/network/probe.rb +28 -0
  96. data/lib/fog/azurerm/models/network/public_ip.rb +70 -0
  97. data/lib/fog/azurerm/models/network/public_ips.rb +30 -0
  98. data/lib/fog/azurerm/models/network/security_rule_access.rb +12 -0
  99. data/lib/fog/azurerm/models/network/security_rule_direction.rb +12 -0
  100. data/lib/fog/azurerm/models/network/security_rule_protocol.rb +13 -0
  101. data/lib/fog/azurerm/models/network/subnet.rb +66 -0
  102. data/lib/fog/azurerm/models/network/subnets.rb +31 -0
  103. data/lib/fog/azurerm/models/network/virtual_network.rb +109 -0
  104. data/lib/fog/azurerm/models/network/virtual_network_gateway.rb +137 -0
  105. data/lib/fog/azurerm/models/network/virtual_network_gateway_connection.rb +76 -0
  106. data/lib/fog/azurerm/models/network/virtual_network_gateway_connections.rb +27 -0
  107. data/lib/fog/azurerm/models/network/virtual_network_gateways.rb +30 -0
  108. data/lib/fog/azurerm/models/network/virtual_networks.rb +36 -0
  109. data/lib/fog/azurerm/models/network/vpn_client_configuration.rb +34 -0
  110. data/lib/fog/azurerm/models/network/vpn_client_revoked_certificates.rb +22 -0
  111. data/lib/fog/azurerm/models/network/vpn_client_root_certificates.rb +22 -0
  112. data/lib/fog/azurerm/models/resources/azure_resource.rb +25 -0
  113. data/lib/fog/azurerm/models/resources/azure_resources.rb +32 -0
  114. data/lib/fog/azurerm/models/resources/dependency.rb +27 -0
  115. data/lib/fog/azurerm/models/resources/deployment.rb +65 -0
  116. data/lib/fog/azurerm/models/resources/deployments.rb +30 -0
  117. data/lib/fog/azurerm/models/resources/provider.rb +27 -0
  118. data/lib/fog/azurerm/models/resources/provider_resource_type.rb +22 -0
  119. data/lib/fog/azurerm/models/resources/resource_group.rb +34 -0
  120. data/lib/fog/azurerm/models/resources/resource_groups.rb +29 -0
  121. data/lib/fog/azurerm/models/sql/firewall_rule.rb +48 -0
  122. data/lib/fog/azurerm/models/sql/firewall_rules.rb +32 -0
  123. data/lib/fog/azurerm/models/sql/sql_database.rb +67 -0
  124. data/lib/fog/azurerm/models/sql/sql_databases.rb +32 -0
  125. data/lib/fog/azurerm/models/sql/sql_server.rb +50 -0
  126. data/lib/fog/azurerm/models/sql/sql_servers.rb +31 -0
  127. data/lib/fog/azurerm/models/storage/directories.rb +75 -0
  128. data/lib/fog/azurerm/models/storage/directory.rb +151 -0
  129. data/lib/fog/azurerm/models/storage/file.rb +263 -0
  130. data/lib/fog/azurerm/models/storage/files.rb +183 -0
  131. data/lib/fog/azurerm/models/storage/kind.rb +12 -0
  132. data/lib/fog/azurerm/models/storage/sku_name.rb +15 -0
  133. data/lib/fog/azurerm/models/storage/sku_tier.rb +12 -0
  134. data/lib/fog/azurerm/models/storage/storage_account.rb +92 -0
  135. data/lib/fog/azurerm/models/storage/storage_accounts.rb +47 -0
  136. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_point.rb +82 -0
  137. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_points.rb +30 -0
  138. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profile.rb +90 -0
  139. data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profiles.rb +27 -0
  140. data/lib/fog/azurerm/network.rb +178 -0
  141. data/lib/fog/azurerm/requests/application_gateway/check_ag_exists.rb +31 -0
  142. data/lib/fog/azurerm/requests/application_gateway/create_or_update_application_gateway.rb +302 -0
  143. data/lib/fog/azurerm/requests/application_gateway/delete_application_gateway.rb +26 -0
  144. data/lib/fog/azurerm/requests/application_gateway/get_application_gateway.rb +159 -0
  145. data/lib/fog/azurerm/requests/application_gateway/list_application_gateways.rb +29 -0
  146. data/lib/fog/azurerm/requests/application_gateway/start_application_gateway.rb +27 -0
  147. data/lib/fog/azurerm/requests/application_gateway/stop_application_gateway.rb +27 -0
  148. data/lib/fog/azurerm/requests/application_gateway/update_sku_attributes.rb +28 -0
  149. data/lib/fog/azurerm/requests/application_gateway/update_subnet_id_in_gateway_ip_configuration.rb +29 -0
  150. data/lib/fog/azurerm/requests/compute/attach_data_disk_to_vm.rb +208 -0
  151. data/lib/fog/azurerm/requests/compute/check_availability_set_exists.rb +31 -0
  152. data/lib/fog/azurerm/requests/compute/check_managed_disk_exists.rb +33 -0
  153. data/lib/fog/azurerm/requests/compute/check_vm_exists.rb +39 -0
  154. data/lib/fog/azurerm/requests/compute/check_vm_extension_exists.rb +31 -0
  155. data/lib/fog/azurerm/requests/compute/check_vm_status.rb +38 -0
  156. data/lib/fog/azurerm/requests/compute/create_availability_set.rb +64 -0
  157. data/lib/fog/azurerm/requests/compute/create_image.rb +68 -0
  158. data/lib/fog/azurerm/requests/compute/create_or_update_managed_disk.rb +121 -0
  159. data/lib/fog/azurerm/requests/compute/create_or_update_vm_extension.rb +63 -0
  160. data/lib/fog/azurerm/requests/compute/create_virtual_machine.rb +403 -0
  161. data/lib/fog/azurerm/requests/compute/deallocate_virtual_machine.rb +35 -0
  162. data/lib/fog/azurerm/requests/compute/delete_availability_set.rb +27 -0
  163. data/lib/fog/azurerm/requests/compute/delete_image.rb +29 -0
  164. data/lib/fog/azurerm/requests/compute/delete_managed_disk.rb +29 -0
  165. data/lib/fog/azurerm/requests/compute/delete_virtual_machine.rb +35 -0
  166. data/lib/fog/azurerm/requests/compute/delete_vm_extension.rb +28 -0
  167. data/lib/fog/azurerm/requests/compute/detach_data_disk_from_vm.rb +102 -0
  168. data/lib/fog/azurerm/requests/compute/generalize_virtual_machine.rb +35 -0
  169. data/lib/fog/azurerm/requests/compute/get_availability_set.rb +32 -0
  170. data/lib/fog/azurerm/requests/compute/get_image.rb +45 -0
  171. data/lib/fog/azurerm/requests/compute/get_managed_disk.rb +64 -0
  172. data/lib/fog/azurerm/requests/compute/get_virtual_machine.rb +88 -0
  173. data/lib/fog/azurerm/requests/compute/get_vm_extension.rb +46 -0
  174. data/lib/fog/azurerm/requests/compute/grant_access_to_managed_disk.rb +30 -0
  175. data/lib/fog/azurerm/requests/compute/list_availability_sets.rb +40 -0
  176. data/lib/fog/azurerm/requests/compute/list_available_sizes_for_virtual_machine.rb +64 -0
  177. data/lib/fog/azurerm/requests/compute/list_managed_disks_by_rg.rb +66 -0
  178. data/lib/fog/azurerm/requests/compute/list_managed_disks_in_subscription.rb +66 -0
  179. data/lib/fog/azurerm/requests/compute/list_virtual_machines.rb +69 -0
  180. data/lib/fog/azurerm/requests/compute/power_off_virtual_machine.rb +35 -0
  181. data/lib/fog/azurerm/requests/compute/redeploy_virtual_machine.rb +35 -0
  182. data/lib/fog/azurerm/requests/compute/restart_virtual_machine.rb +35 -0
  183. data/lib/fog/azurerm/requests/compute/revoke_access_to_managed_disk.rb +33 -0
  184. data/lib/fog/azurerm/requests/compute/start_virtual_machine.rb +35 -0
  185. data/lib/fog/azurerm/requests/dns/check_record_set_exists.rb +31 -0
  186. data/lib/fog/azurerm/requests/dns/check_zone_exists.rb +34 -0
  187. data/lib/fog/azurerm/requests/dns/create_or_update_record_set.rb +72 -0
  188. data/lib/fog/azurerm/requests/dns/create_or_update_zone.rb +56 -0
  189. data/lib/fog/azurerm/requests/dns/delete_record_set.rb +28 -0
  190. data/lib/fog/azurerm/requests/dns/delete_zone.rb +28 -0
  191. data/lib/fog/azurerm/requests/dns/get_record_set.rb +47 -0
  192. data/lib/fog/azurerm/requests/dns/get_records_from_record_set.rb +32 -0
  193. data/lib/fog/azurerm/requests/dns/get_zone.rb +41 -0
  194. data/lib/fog/azurerm/requests/dns/list_record_sets.rb +63 -0
  195. data/lib/fog/azurerm/requests/dns/list_zones.rb +72 -0
  196. data/lib/fog/azurerm/requests/key_vault/check_vault_exists.rb +31 -0
  197. data/lib/fog/azurerm/requests/key_vault/create_or_update_vault.rb +106 -0
  198. data/lib/fog/azurerm/requests/key_vault/delete_vault.rb +28 -0
  199. data/lib/fog/azurerm/requests/key_vault/get_vault.rb +54 -0
  200. data/lib/fog/azurerm/requests/key_vault/list_vaults.rb +56 -0
  201. data/lib/fog/azurerm/requests/network/add_address_prefixes_in_virtual_network.rb +68 -0
  202. data/lib/fog/azurerm/requests/network/add_dns_servers_in_virtual_network.rb +76 -0
  203. data/lib/fog/azurerm/requests/network/add_security_rules.rb +154 -0
  204. data/lib/fog/azurerm/requests/network/add_subnets_in_virtual_network.rb +71 -0
  205. data/lib/fog/azurerm/requests/network/attach_network_security_group_to_subnet.rb +57 -0
  206. data/lib/fog/azurerm/requests/network/attach_resource_to_nic.rb +89 -0
  207. data/lib/fog/azurerm/requests/network/attach_route_table_to_subnet.rb +57 -0
  208. data/lib/fog/azurerm/requests/network/check_express_route_cir_auth_exists.rb +31 -0
  209. data/lib/fog/azurerm/requests/network/check_express_route_circuit_exists.rb +31 -0
  210. data/lib/fog/azurerm/requests/network/check_load_balancer_exists.rb +31 -0
  211. data/lib/fog/azurerm/requests/network/check_local_net_gateway_exists.rb +31 -0
  212. data/lib/fog/azurerm/requests/network/check_net_sec_group_exists.rb +31 -0
  213. data/lib/fog/azurerm/requests/network/check_net_sec_rule_exists.rb +31 -0
  214. data/lib/fog/azurerm/requests/network/check_network_interface_exists.rb +31 -0
  215. data/lib/fog/azurerm/requests/network/check_public_ip_exists.rb +33 -0
  216. data/lib/fog/azurerm/requests/network/check_subnet_exists.rb +32 -0
  217. data/lib/fog/azurerm/requests/network/check_virtual_network_exists.rb +33 -0
  218. data/lib/fog/azurerm/requests/network/check_vnet_gateway_connection_exists.rb +32 -0
  219. data/lib/fog/azurerm/requests/network/check_vnet_gateway_exists.rb +32 -0
  220. data/lib/fog/azurerm/requests/network/create_load_balancer.rb +189 -0
  221. data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit.rb +111 -0
  222. data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit_authorization.rb +51 -0
  223. data/lib/fog/azurerm/requests/network/create_or_update_express_route_circuit_peering.rb +79 -0
  224. data/lib/fog/azurerm/requests/network/create_or_update_local_network_gateway.rb +79 -0
  225. data/lib/fog/azurerm/requests/network/create_or_update_network_interface.rb +121 -0
  226. data/lib/fog/azurerm/requests/network/create_or_update_network_security_group.rb +178 -0
  227. data/lib/fog/azurerm/requests/network/create_or_update_network_security_rule.rb +59 -0
  228. data/lib/fog/azurerm/requests/network/create_or_update_public_ip.rb +61 -0
  229. data/lib/fog/azurerm/requests/network/create_or_update_virtual_network.rb +111 -0
  230. data/lib/fog/azurerm/requests/network/create_or_update_virtual_network_gateway.rb +159 -0
  231. data/lib/fog/azurerm/requests/network/create_or_update_virtual_network_gateway_connection.rb +83 -0
  232. data/lib/fog/azurerm/requests/network/create_subnet.rb +54 -0
  233. data/lib/fog/azurerm/requests/network/delete_express_route_circuit.rb +28 -0
  234. data/lib/fog/azurerm/requests/network/delete_express_route_circuit_authorization.rb +29 -0
  235. data/lib/fog/azurerm/requests/network/delete_express_route_circuit_peering.rb +28 -0
  236. data/lib/fog/azurerm/requests/network/delete_load_balancer.rb +28 -0
  237. data/lib/fog/azurerm/requests/network/delete_local_network_gateway.rb +29 -0
  238. data/lib/fog/azurerm/requests/network/delete_network_interface.rb +28 -0
  239. data/lib/fog/azurerm/requests/network/delete_network_security_group.rb +30 -0
  240. data/lib/fog/azurerm/requests/network/delete_network_security_rule.rb +30 -0
  241. data/lib/fog/azurerm/requests/network/delete_public_ip.rb +27 -0
  242. data/lib/fog/azurerm/requests/network/delete_subnet.rb +28 -0
  243. data/lib/fog/azurerm/requests/network/delete_virtual_network.rb +28 -0
  244. data/lib/fog/azurerm/requests/network/delete_virtual_network_gateway.rb +28 -0
  245. data/lib/fog/azurerm/requests/network/delete_virtual_network_gateway_connection.rb +29 -0
  246. data/lib/fog/azurerm/requests/network/detach_network_security_group_from_subnet.rb +51 -0
  247. data/lib/fog/azurerm/requests/network/detach_resource_from_nic.rb +81 -0
  248. data/lib/fog/azurerm/requests/network/detach_route_table_from_subnet.rb +51 -0
  249. data/lib/fog/azurerm/requests/network/get_available_ipaddresses_count.rb +23 -0
  250. data/lib/fog/azurerm/requests/network/get_connection_shared_key.rb +25 -0
  251. data/lib/fog/azurerm/requests/network/get_express_route_circuit.rb +51 -0
  252. data/lib/fog/azurerm/requests/network/get_express_route_circuit_authorization.rb +35 -0
  253. data/lib/fog/azurerm/requests/network/get_express_route_circuit_peering.rb +48 -0
  254. data/lib/fog/azurerm/requests/network/get_load_balancer.rb +170 -0
  255. data/lib/fog/azurerm/requests/network/get_local_network_gateway.rb +47 -0
  256. data/lib/fog/azurerm/requests/network/get_network_interface.rb +60 -0
  257. data/lib/fog/azurerm/requests/network/get_network_security_group.rb +165 -0
  258. data/lib/fog/azurerm/requests/network/get_network_security_rule.rb +47 -0
  259. data/lib/fog/azurerm/requests/network/get_public_ip.rb +41 -0
  260. data/lib/fog/azurerm/requests/network/get_subnet.rb +37 -0
  261. data/lib/fog/azurerm/requests/network/get_virtual_network.rb +62 -0
  262. data/lib/fog/azurerm/requests/network/get_virtual_network_gateway.rb +45 -0
  263. data/lib/fog/azurerm/requests/network/get_virtual_network_gateway_connection.rb +47 -0
  264. data/lib/fog/azurerm/requests/network/list_express_route_circuit_authorizations.rb +37 -0
  265. data/lib/fog/azurerm/requests/network/list_express_route_circuit_peerings.rb +44 -0
  266. data/lib/fog/azurerm/requests/network/list_express_route_circuits.rb +53 -0
  267. data/lib/fog/azurerm/requests/network/list_express_route_service_providers.rb +37 -0
  268. data/lib/fog/azurerm/requests/network/list_load_balancers.rb +31 -0
  269. data/lib/fog/azurerm/requests/network/list_load_balancers_in_subscription.rb +31 -0
  270. data/lib/fog/azurerm/requests/network/list_local_network_gateways.rb +50 -0
  271. data/lib/fog/azurerm/requests/network/list_network_interfaces.rb +67 -0
  272. data/lib/fog/azurerm/requests/network/list_network_security_groups.rb +169 -0
  273. data/lib/fog/azurerm/requests/network/list_network_security_rules.rb +51 -0
  274. data/lib/fog/azurerm/requests/network/list_public_ips.rb +46 -0
  275. data/lib/fog/azurerm/requests/network/list_subnets.rb +55 -0
  276. data/lib/fog/azurerm/requests/network/list_virtual_network_gateway_connections.rb +50 -0
  277. data/lib/fog/azurerm/requests/network/list_virtual_network_gateways.rb +43 -0
  278. data/lib/fog/azurerm/requests/network/list_virtual_networks.rb +74 -0
  279. data/lib/fog/azurerm/requests/network/list_virtual_networks_in_subscription.rb +74 -0
  280. data/lib/fog/azurerm/requests/network/remove_address_prefixes_from_virtual_network.rb +69 -0
  281. data/lib/fog/azurerm/requests/network/remove_dns_servers_from_virtual_network.rb +69 -0
  282. data/lib/fog/azurerm/requests/network/remove_security_rule.rb +157 -0
  283. data/lib/fog/azurerm/requests/network/remove_subnets_from_virtual_network.rb +59 -0
  284. data/lib/fog/azurerm/requests/network/reset_connection_shared_key.rb +36 -0
  285. data/lib/fog/azurerm/requests/network/set_connection_shared_key.rb +36 -0
  286. data/lib/fog/azurerm/requests/resources/check_azure_resource_exists.rb +40 -0
  287. data/lib/fog/azurerm/requests/resources/check_deployment_exists.rb +30 -0
  288. data/lib/fog/azurerm/requests/resources/check_resource_group_exists.rb +30 -0
  289. data/lib/fog/azurerm/requests/resources/create_deployment.rb +97 -0
  290. data/lib/fog/azurerm/requests/resources/create_resource_group.rb +40 -0
  291. data/lib/fog/azurerm/requests/resources/delete_deployment.rb +28 -0
  292. data/lib/fog/azurerm/requests/resources/delete_resource_group.rb +28 -0
  293. data/lib/fog/azurerm/requests/resources/delete_resource_tag.rb +44 -0
  294. data/lib/fog/azurerm/requests/resources/get_deployment.rb +81 -0
  295. data/lib/fog/azurerm/requests/resources/get_resource_group.rb +47 -0
  296. data/lib/fog/azurerm/requests/resources/list_deployments.rb +77 -0
  297. data/lib/fog/azurerm/requests/resources/list_resource_groups.rb +51 -0
  298. data/lib/fog/azurerm/requests/resources/list_tagged_resources.rb +50 -0
  299. data/lib/fog/azurerm/requests/resources/tag_resource.rb +43 -0
  300. data/lib/fog/azurerm/requests/sql/check_database_exists.rb +21 -0
  301. data/lib/fog/azurerm/requests/sql/check_firewall_rule_exists.rb +21 -0
  302. data/lib/fog/azurerm/requests/sql/check_sql_server_exists.rb +21 -0
  303. data/lib/fog/azurerm/requests/sql/create_or_update_database.rb +71 -0
  304. data/lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb +42 -0
  305. data/lib/fog/azurerm/requests/sql/create_or_update_sql_server.rb +53 -0
  306. data/lib/fog/azurerm/requests/sql/delete_database.rb +28 -0
  307. data/lib/fog/azurerm/requests/sql/delete_firewall_rule.rb +29 -0
  308. data/lib/fog/azurerm/requests/sql/delete_sql_server.rb +29 -0
  309. data/lib/fog/azurerm/requests/sql/get_database.rb +42 -0
  310. data/lib/fog/azurerm/requests/sql/get_firewall_rule.rb +37 -0
  311. data/lib/fog/azurerm/requests/sql/get_sql_server.rb +34 -0
  312. data/lib/fog/azurerm/requests/sql/list_databases.rb +58 -0
  313. data/lib/fog/azurerm/requests/sql/list_firewall_rules.rb +49 -0
  314. data/lib/fog/azurerm/requests/sql/list_sql_servers.rb +44 -0
  315. data/lib/fog/azurerm/requests/storage/acquire_blob_lease.rb +32 -0
  316. data/lib/fog/azurerm/requests/storage/acquire_container_lease.rb +32 -0
  317. data/lib/fog/azurerm/requests/storage/check_container_exists.rb +30 -0
  318. data/lib/fog/azurerm/requests/storage/check_storage_account_exists.rb +37 -0
  319. data/lib/fog/azurerm/requests/storage/check_storage_account_name_availability.rb +44 -0
  320. data/lib/fog/azurerm/requests/storage/commit_blob_blocks.rb +30 -0
  321. data/lib/fog/azurerm/requests/storage/compare_container_blobs.rb +148 -0
  322. data/lib/fog/azurerm/requests/storage/copy_blob.rb +30 -0
  323. data/lib/fog/azurerm/requests/storage/copy_blob_from_uri.rb +30 -0
  324. data/lib/fog/azurerm/requests/storage/create_block_blob.rb +108 -0
  325. data/lib/fog/azurerm/requests/storage/create_container.rb +40 -0
  326. data/lib/fog/azurerm/requests/storage/create_disk.rb +62 -0
  327. data/lib/fog/azurerm/requests/storage/create_page_blob.rb +31 -0
  328. data/lib/fog/azurerm/requests/storage/create_storage_account.rb +66 -0
  329. data/lib/fog/azurerm/requests/storage/delete_blob.rb +32 -0
  330. data/lib/fog/azurerm/requests/storage/delete_container.rb +31 -0
  331. data/lib/fog/azurerm/requests/storage/delete_disk.rb +36 -0
  332. data/lib/fog/azurerm/requests/storage/delete_storage_account.rb +27 -0
  333. data/lib/fog/azurerm/requests/storage/get_blob.rb +163 -0
  334. data/lib/fog/azurerm/requests/storage/get_blob_http_url.rb +39 -0
  335. data/lib/fog/azurerm/requests/storage/get_blob_https_url.rb +39 -0
  336. data/lib/fog/azurerm/requests/storage/get_blob_properties.rb +55 -0
  337. data/lib/fog/azurerm/requests/storage/get_blob_url.rb +28 -0
  338. data/lib/fog/azurerm/requests/storage/get_container_acl.rb +30 -0
  339. data/lib/fog/azurerm/requests/storage/get_container_properties.rb +41 -0
  340. data/lib/fog/azurerm/requests/storage/get_container_url.rb +34 -0
  341. data/lib/fog/azurerm/requests/storage/get_storage_access_keys.rb +32 -0
  342. data/lib/fog/azurerm/requests/storage/get_storage_account.rb +36 -0
  343. data/lib/fog/azurerm/requests/storage/list_blobs.rb +168 -0
  344. data/lib/fog/azurerm/requests/storage/list_containers.rb +73 -0
  345. data/lib/fog/azurerm/requests/storage/list_storage_account_for_rg.rb +49 -0
  346. data/lib/fog/azurerm/requests/storage/list_storage_accounts.rb +49 -0
  347. data/lib/fog/azurerm/requests/storage/multipart_save_block_blob.rb +110 -0
  348. data/lib/fog/azurerm/requests/storage/put_blob_block.rb +30 -0
  349. data/lib/fog/azurerm/requests/storage/put_blob_metadata.rb +31 -0
  350. data/lib/fog/azurerm/requests/storage/put_blob_pages.rb +30 -0
  351. data/lib/fog/azurerm/requests/storage/put_blob_properties.rb +31 -0
  352. data/lib/fog/azurerm/requests/storage/put_container_acl.rb +31 -0
  353. data/lib/fog/azurerm/requests/storage/put_container_metadata.rb +31 -0
  354. data/lib/fog/azurerm/requests/storage/release_blob_lease.rb +30 -0
  355. data/lib/fog/azurerm/requests/storage/release_container_lease.rb +30 -0
  356. data/lib/fog/azurerm/requests/storage/save_page_blob.rb +111 -0
  357. data/lib/fog/azurerm/requests/storage/update_storage_account.rb +59 -0
  358. data/lib/fog/azurerm/requests/storage/wait_blob_copy_operation_to_finish.rb +56 -0
  359. data/lib/fog/azurerm/requests/traffic_manager/check_traffic_manager_endpoint_exists.rb +31 -0
  360. data/lib/fog/azurerm/requests/traffic_manager/check_traffic_manager_profile_exists.rb +31 -0
  361. data/lib/fog/azurerm/requests/traffic_manager/create_or_update_traffic_manager_endpoint.rb +54 -0
  362. data/lib/fog/azurerm/requests/traffic_manager/create_or_update_traffic_manager_profile.rb +130 -0
  363. data/lib/fog/azurerm/requests/traffic_manager/delete_traffic_manager_endpoint.rb +28 -0
  364. data/lib/fog/azurerm/requests/traffic_manager/delete_traffic_manager_profile.rb +26 -0
  365. data/lib/fog/azurerm/requests/traffic_manager/get_traffic_manager_endpoint.rb +39 -0
  366. data/lib/fog/azurerm/requests/traffic_manager/get_traffic_manager_profile.rb +80 -0
  367. data/lib/fog/azurerm/requests/traffic_manager/list_traffic_manager_profiles.rb +82 -0
  368. data/lib/fog/azurerm/resources.rb +71 -0
  369. data/lib/fog/azurerm/sql.rb +66 -0
  370. data/lib/fog/azurerm/storage.rb +136 -0
  371. data/lib/fog/azurerm/traffic_manager.rb +62 -0
  372. data/lib/fog/azurerm/utilities/general.rb +179 -0
  373. data/lib/fog/azurerm/utilities/logger_messages.yml +19 -0
  374. data/lib/fog/azurerm/version.rb +5 -0
  375. data/rake-script.sh +10 -0
  376. data/rakefile +29 -0
  377. data/test/api_stub.rb +145 -0
  378. data/test/api_stub/models/application_gateway/gateway.rb +165 -0
  379. data/test/api_stub/models/compute/availability_set.rb +69 -0
  380. data/test/api_stub/models/compute/managed_disk.rb +59 -0
  381. data/test/api_stub/models/compute/server.rb +268 -0
  382. data/test/api_stub/models/compute/virtual_machine_extension.rb +31 -0
  383. data/test/api_stub/models/dns/record_set.rb +57 -0
  384. data/test/api_stub/models/dns/zone.rb +29 -0
  385. data/test/api_stub/models/key_vault/vault.rb +39 -0
  386. data/test/api_stub/models/network/express_route_circuit.rb +47 -0
  387. data/test/api_stub/models/network/express_route_circuit_authorization.rb +22 -0
  388. data/test/api_stub/models/network/express_route_circuit_peering.rb +33 -0
  389. data/test/api_stub/models/network/express_route_service_provider.rb +29 -0
  390. data/test/api_stub/models/network/load_balancer.rb +154 -0
  391. data/test/api_stub/models/network/local_network_gateway.rb +31 -0
  392. data/test/api_stub/models/network/network_interface.rb +72 -0
  393. data/test/api_stub/models/network/network_security_group.rb +95 -0
  394. data/test/api_stub/models/network/network_security_rule.rb +30 -0
  395. data/test/api_stub/models/network/public_ip.rb +36 -0
  396. data/test/api_stub/models/network/subnet.rb +36 -0
  397. data/test/api_stub/models/network/virtual_network.rb +62 -0
  398. data/test/api_stub/models/network/virtual_network_gateway.rb +26 -0
  399. data/test/api_stub/models/network/virtual_network_gateway_connection.rb +31 -0
  400. data/test/api_stub/models/resources/deployment.rb +116 -0
  401. data/test/api_stub/models/resources/resource.rb +43 -0
  402. data/test/api_stub/models/resources/resource_group.rb +24 -0
  403. data/test/api_stub/models/sql/sql_database.rb +30 -0
  404. data/test/api_stub/models/sql/sql_firewall_rule.rb +24 -0
  405. data/test/api_stub/models/sql/sql_server.rb +24 -0
  406. data/test/api_stub/models/storage/directory.rb +178 -0
  407. data/test/api_stub/models/storage/file.rb +181 -0
  408. data/test/api_stub/models/storage/storageaccount.rb +22 -0
  409. data/test/api_stub/models/traffic_manager/traffic_manager_end_point.rb +27 -0
  410. data/test/api_stub/models/traffic_manager/traffic_manager_profile.rb +75 -0
  411. data/test/api_stub/requests/application_gateway/gateway.rb +461 -0
  412. data/test/api_stub/requests/compute/availability_set.rb +114 -0
  413. data/test/api_stub/requests/compute/image.rb +41 -0
  414. data/test/api_stub/requests/compute/managed_disk.rb +102 -0
  415. data/test/api_stub/requests/compute/virtual_machine.rb +1018 -0
  416. data/test/api_stub/requests/compute/virtual_machine_extension.rb +46 -0
  417. data/test/api_stub/requests/dns/record_set.rb +75 -0
  418. data/test/api_stub/requests/dns/zone.rb +52 -0
  419. data/test/api_stub/requests/key_vault/vault.rb +95 -0
  420. data/test/api_stub/requests/network/express_route_circuit.rb +100 -0
  421. data/test/api_stub/requests/network/express_route_circuit_authorization.rb +31 -0
  422. data/test/api_stub/requests/network/express_route_circuit_peering.rb +62 -0
  423. data/test/api_stub/requests/network/express_route_service_provider.rb +30 -0
  424. data/test/api_stub/requests/network/load_balancer.rb +388 -0
  425. data/test/api_stub/requests/network/local_network_gateway.rb +62 -0
  426. data/test/api_stub/requests/network/network_interface.rb +264 -0
  427. data/test/api_stub/requests/network/network_security_group.rb +225 -0
  428. data/test/api_stub/requests/network/network_security_rule.rb +72 -0
  429. data/test/api_stub/requests/network/public_ip.rb +71 -0
  430. data/test/api_stub/requests/network/subnet.rb +71 -0
  431. data/test/api_stub/requests/network/virtual_network.rb +125 -0
  432. data/test/api_stub/requests/network/virtual_network_gateway.rb +49 -0
  433. data/test/api_stub/requests/network/virtual_network_gateway_connection.rb +68 -0
  434. data/test/api_stub/requests/resources/deployment.rb +68 -0
  435. data/test/api_stub/requests/resources/resource.rb +45 -0
  436. data/test/api_stub/requests/resources/resource_group.rb +51 -0
  437. data/test/api_stub/requests/sql/database.rb +71 -0
  438. data/test/api_stub/requests/sql/firewall_rule.rb +50 -0
  439. data/test/api_stub/requests/sql/sql_server.rb +49 -0
  440. data/test/api_stub/requests/storage/directory.rb +89 -0
  441. data/test/api_stub/requests/storage/file.rb +243 -0
  442. data/test/api_stub/requests/storage/storageaccount.rb +126 -0
  443. data/test/api_stub/requests/traffic_manager/traffic_manager_endpoint.rb +41 -0
  444. data/test/api_stub/requests/traffic_manager/traffic_manager_profile.rb +166 -0
  445. data/test/integration/README.md +14 -0
  446. data/test/integration/application_gateway.rb +260 -0
  447. data/test/integration/availability_set.rb +184 -0
  448. data/test/integration/blob.rb +297 -0
  449. data/test/integration/container.rb +160 -0
  450. data/test/integration/credentials/azure.yml +5 -0
  451. data/test/integration/data_disk.rb +90 -0
  452. data/test/integration/deployment.rb +78 -0
  453. data/test/integration/express_route_circuit.rb +139 -0
  454. data/test/integration/external_load_balancer.rb +156 -0
  455. data/test/integration/internal_load_balancer.rb +145 -0
  456. data/test/integration/key_vault.rb +99 -0
  457. data/test/integration/local_network_gateway.rb +91 -0
  458. data/test/integration/managed_disk.rb +118 -0
  459. data/test/integration/network_interface.rb +157 -0
  460. data/test/integration/network_security_group.rb +134 -0
  461. data/test/integration/network_security_rule.rb +102 -0
  462. data/test/integration/public_ip.rb +84 -0
  463. data/test/integration/record_set.rb +126 -0
  464. data/test/integration/resource_group.rb +62 -0
  465. data/test/integration/resource_tag.rb +93 -0
  466. data/test/integration/server.rb +356 -0
  467. data/test/integration/server_custom_image.rb +227 -0
  468. data/test/integration/sql_server.rb +183 -0
  469. data/test/integration/storage_account.rb +135 -0
  470. data/test/integration/subnet.rb +122 -0
  471. data/test/integration/traffic_manager.rb +142 -0
  472. data/test/integration/virtual_machine_extension.rb +165 -0
  473. data/test/integration/virtual_network.rb +163 -0
  474. data/test/integration/virtual_network_gateway.rb +119 -0
  475. data/test/integration/virtual_network_gateway_connection.rb +221 -0
  476. data/test/integration/virtual_network_gateway_connection_to_express_route.rb +123 -0
  477. data/test/integration/zone.rb +81 -0
  478. data/test/models/application_gateway/test_gateway.rb +136 -0
  479. data/test/models/application_gateway/test_gateways.rb +55 -0
  480. data/test/models/compute/test_availability_set.rb +57 -0
  481. data/test/models/compute/test_availability_sets.rb +55 -0
  482. data/test/models/compute/test_data_disk.rb +23 -0
  483. data/test/models/compute/test_managed_disk.rb +62 -0
  484. data/test/models/compute/test_managed_disks.rb +68 -0
  485. data/test/models/compute/test_server.rb +236 -0
  486. data/test/models/compute/test_servers.rb +56 -0
  487. data/test/models/compute/test_virtual_machine_extension.rb +61 -0
  488. data/test/models/compute/test_virtual_machine_extensions.rb +49 -0
  489. data/test/models/dns/test_record_set.rb +86 -0
  490. data/test/models/dns/test_record_sets.rb +66 -0
  491. data/test/models/dns/test_zone.rb +51 -0
  492. data/test/models/dns/test_zones.rb +51 -0
  493. data/test/models/key_vault/test_vault.rb +40 -0
  494. data/test/models/key_vault/test_vaults.rb +55 -0
  495. data/test/models/network/test_express_route_circuit.rb +52 -0
  496. data/test/models/network/test_express_route_circuit_authorization.rb +50 -0
  497. data/test/models/network/test_express_route_circuit_authorizations.rb +56 -0
  498. data/test/models/network/test_express_route_circuit_peering.rb +53 -0
  499. data/test/models/network/test_express_route_circuit_peerings.rb +43 -0
  500. data/test/models/network/test_express_route_circuits.rb +55 -0
  501. data/test/models/network/test_express_route_service_providers.rb +30 -0
  502. data/test/models/network/test_load_balancer.rb +52 -0
  503. data/test/models/network/test_load_balancers.rb +55 -0
  504. data/test/models/network/test_local_network_gateway.rb +53 -0
  505. data/test/models/network/test_local_network_gateways.rb +55 -0
  506. data/test/models/network/test_network_interface.rb +97 -0
  507. data/test/models/network/test_network_interfaces.rb +55 -0
  508. data/test/models/network/test_network_security_group.rb +87 -0
  509. data/test/models/network/test_network_security_groups.rb +54 -0
  510. data/test/models/network/test_network_security_rule.rb +44 -0
  511. data/test/models/network/test_network_security_rules.rb +55 -0
  512. data/test/models/network/test_public_ip.rb +62 -0
  513. data/test/models/network/test_public_ips.rb +55 -0
  514. data/test/models/network/test_subnet.rb +83 -0
  515. data/test/models/network/test_subnets.rb +56 -0
  516. data/test/models/network/test_virtual_network.rb +107 -0
  517. data/test/models/network/test_virtual_network_gateway.rb +62 -0
  518. data/test/models/network/test_virtual_network_gateway_connection.rb +59 -0
  519. data/test/models/network/test_virtual_network_gateway_connections.rb +55 -0
  520. data/test/models/network/test_virtual_network_gateways.rb +55 -0
  521. data/test/models/network/test_virtual_networks.rb +67 -0
  522. data/test/models/resources/test_deployment.rb +55 -0
  523. data/test/models/resources/test_deployments.rb +51 -0
  524. data/test/models/resources/test_resource.rb +22 -0
  525. data/test/models/resources/test_resource_group.rb +45 -0
  526. data/test/models/resources/test_resource_groups.rb +51 -0
  527. data/test/models/resources/test_resources.rb +52 -0
  528. data/test/models/sql/test_database.rb +68 -0
  529. data/test/models/sql/test_databases.rb +42 -0
  530. data/test/models/sql/test_firewall_rule.rb +55 -0
  531. data/test/models/sql/test_firewall_rules.rb +42 -0
  532. data/test/models/sql/test_sql_server.rb +58 -0
  533. data/test/models/sql/test_sql_servers.rb +41 -0
  534. data/test/models/storage/test_directories.rb +74 -0
  535. data/test/models/storage/test_directory.rb +178 -0
  536. data/test/models/storage/test_file.rb +294 -0
  537. data/test/models/storage/test_files.rb +234 -0
  538. data/test/models/storage/test_storage_account.rb +89 -0
  539. data/test/models/storage/test_storage_accounts.rb +78 -0
  540. data/test/models/traffic_manager/test_traffic_manager_end_point.rb +54 -0
  541. data/test/models/traffic_manager/test_traffic_manager_end_points.rb +56 -0
  542. data/test/models/traffic_manager/test_traffic_manager_profile.rb +63 -0
  543. data/test/models/traffic_manager/test_traffic_manager_profiles.rb +55 -0
  544. data/test/requests/application_gateway/test_check_ag_exists.rb +38 -0
  545. data/test/requests/application_gateway/test_create_or_update_application_gateway.rb +35 -0
  546. data/test/requests/application_gateway/test_delete_application_gateway.rb +23 -0
  547. data/test/requests/application_gateway/test_get_application_gateway.rb +24 -0
  548. data/test/requests/application_gateway/test_list_application_gateways.rb +24 -0
  549. data/test/requests/application_gateway/test_start_application_gateway.rb +25 -0
  550. data/test/requests/application_gateway/test_stop_application_gateway.rb +25 -0
  551. data/test/requests/compute/test_attach_data_disk_to_vm.rb +105 -0
  552. data/test/requests/compute/test_check_availability_set_exists.rb +38 -0
  553. data/test/requests/compute/test_check_managed_disk_exists.rb +38 -0
  554. data/test/requests/compute/test_check_vm_exists.rb +38 -0
  555. data/test/requests/compute/test_check_vm_extension_exists.rb +38 -0
  556. data/test/requests/compute/test_create_availability_set.rb +112 -0
  557. data/test/requests/compute/test_create_image.rb +27 -0
  558. data/test/requests/compute/test_create_or_update_managed_disk.rb +38 -0
  559. data/test/requests/compute/test_create_virtual_machine.rb +90 -0
  560. data/test/requests/compute/test_create_vm_extension.rb +35 -0
  561. data/test/requests/compute/test_deallocate_virtual_machine.rb +32 -0
  562. data/test/requests/compute/test_delete_availability_set.rb +23 -0
  563. data/test/requests/compute/test_delete_image.rb +23 -0
  564. data/test/requests/compute/test_delete_managed_disk.rb +23 -0
  565. data/test/requests/compute/test_delete_virtual_machine.rb +32 -0
  566. data/test/requests/compute/test_detach_data_disk_from_vm.rb +32 -0
  567. data/test/requests/compute/test_generalize_virtual_machine.rb +32 -0
  568. data/test/requests/compute/test_get_availability_set.rb +24 -0
  569. data/test/requests/compute/test_get_image.rb +23 -0
  570. data/test/requests/compute/test_get_managed_disk.rb +24 -0
  571. data/test/requests/compute/test_get_virtual_machine.rb +24 -0
  572. data/test/requests/compute/test_get_vm_extension.rb +26 -0
  573. data/test/requests/compute/test_get_vm_status.rb +25 -0
  574. data/test/requests/compute/test_grant_access_to_managed_disk.rb +26 -0
  575. data/test/requests/compute/test_list_availability_sets.rb +24 -0
  576. data/test/requests/compute/test_list_available_sizes_for_virtual_machine.rb +33 -0
  577. data/test/requests/compute/test_list_managed_disks_by_rg.rb +24 -0
  578. data/test/requests/compute/test_list_managed_disks_in_subscription.rb +24 -0
  579. data/test/requests/compute/test_list_virtual_machines.rb +24 -0
  580. data/test/requests/compute/test_power_off_virtual_machine.rb +32 -0
  581. data/test/requests/compute/test_redeploy_virtual_machine.rb +33 -0
  582. data/test/requests/compute/test_restart_virtual_machine.rb +32 -0
  583. data/test/requests/compute/test_revoke_access_to_managed_disk.rb +24 -0
  584. data/test/requests/compute/test_start_virtual_machine.rb +32 -0
  585. data/test/requests/compute/test_update_vm_extension.rb +35 -0
  586. data/test/requests/dns/test_check_record_set_exists.rb +38 -0
  587. data/test/requests/dns/test_check_zone_exists.rb +49 -0
  588. data/test/requests/dns/test_create_record_set.rb +46 -0
  589. data/test/requests/dns/test_create_zone.rb +37 -0
  590. data/test/requests/dns/test_delete_record_set.rb +24 -0
  591. data/test/requests/dns/test_delete_zone.rb +24 -0
  592. data/test/requests/dns/test_get_record_set.rb +24 -0
  593. data/test/requests/dns/test_get_records_from_record_set.rb +42 -0
  594. data/test/requests/dns/test_get_zone.rb +35 -0
  595. data/test/requests/dns/test_list_record_sets.rb +35 -0
  596. data/test/requests/dns/test_list_zones.rb +26 -0
  597. data/test/requests/key_vault/test_check_vault_exists.rb +38 -0
  598. data/test/requests/key_vault/test_create_or_update_vault.rb +25 -0
  599. data/test/requests/key_vault/test_delete_vault.rb +23 -0
  600. data/test/requests/key_vault/test_get_vault.rb +24 -0
  601. data/test/requests/key_vault/test_list_vaults.rb +24 -0
  602. data/test/requests/network/test_add_address_prefixes_in_virtual_network.rb +29 -0
  603. data/test/requests/network/test_add_dns_servers_in_virtual_network.rb +29 -0
  604. data/test/requests/network/test_add_security_rules.rb +43 -0
  605. data/test/requests/network/test_add_subnets_in_virtual_network.rb +29 -0
  606. data/test/requests/network/test_attach_network_security_group_to_subnet.rb +26 -0
  607. data/test/requests/network/test_attach_resource_to_nic.rb +43 -0
  608. data/test/requests/network/test_attach_route_table_to_subnet.rb +26 -0
  609. data/test/requests/network/test_check_express_route_cir_auth_exists.rb +38 -0
  610. data/test/requests/network/test_check_express_route_circuit_exists.rb +38 -0
  611. data/test/requests/network/test_check_load_balancer_exists.rb +38 -0
  612. data/test/requests/network/test_check_local_net_gateway_exists.rb +38 -0
  613. data/test/requests/network/test_check_net_sec_group_exists.rb +38 -0
  614. data/test/requests/network/test_check_net_sec_rule_exists.rb +38 -0
  615. data/test/requests/network/test_check_network_interface_exists.rb +38 -0
  616. data/test/requests/network/test_check_public_ip_exists.rb +37 -0
  617. data/test/requests/network/test_check_subnet_exists.rb +38 -0
  618. data/test/requests/network/test_check_virtual_network_exists.rb +40 -0
  619. data/test/requests/network/test_check_vnet_gateway_connection_exists.rb +38 -0
  620. data/test/requests/network/test_check_vnet_gateway_exists.rb +38 -0
  621. data/test/requests/network/test_create_express_route_circuit.rb +39 -0
  622. data/test/requests/network/test_create_express_route_circuit_authorization.rb +35 -0
  623. data/test/requests/network/test_create_express_route_circuit_peering.rb +37 -0
  624. data/test/requests/network/test_create_load_balancer.rb +50 -0
  625. data/test/requests/network/test_create_local_network_gateway.rb +36 -0
  626. data/test/requests/network/test_create_network_interface.rb +43 -0
  627. data/test/requests/network/test_create_or_update_network_security_group.rb +39 -0
  628. data/test/requests/network/test_create_or_update_network_security_rule.rb +28 -0
  629. data/test/requests/network/test_create_or_update_virtual_network.rb +57 -0
  630. data/test/requests/network/test_create_public_ip.rb +36 -0
  631. data/test/requests/network/test_create_subnet.rb +35 -0
  632. data/test/requests/network/test_create_virtual_network_gateway.rb +37 -0
  633. data/test/requests/network/test_create_virtual_network_gateway_connection.rb +36 -0
  634. data/test/requests/network/test_delete_express_route_circuit.rb +24 -0
  635. data/test/requests/network/test_delete_express_route_circuit_authorization.rb +23 -0
  636. data/test/requests/network/test_delete_express_route_circuit_peering.rb +24 -0
  637. data/test/requests/network/test_delete_load_balancer.rb +24 -0
  638. data/test/requests/network/test_delete_local_network_gateway.rb +23 -0
  639. data/test/requests/network/test_delete_network_interface.rb +24 -0
  640. data/test/requests/network/test_delete_network_security_group.rb +25 -0
  641. data/test/requests/network/test_delete_network_security_rule.rb +25 -0
  642. data/test/requests/network/test_delete_public_ip.rb +24 -0
  643. data/test/requests/network/test_delete_subnet.rb +24 -0
  644. data/test/requests/network/test_delete_virtual_network.rb +24 -0
  645. data/test/requests/network/test_delete_virtual_network_gateway.rb +24 -0
  646. data/test/requests/network/test_delete_virtual_network_gateway_connection.rb +23 -0
  647. data/test/requests/network/test_detach_network_security_group_from_subnet.rb +26 -0
  648. data/test/requests/network/test_detach_resource_from_nic.rb +41 -0
  649. data/test/requests/network/test_detach_route_table_from_subnet.rb +26 -0
  650. data/test/requests/network/test_get_available_ipaddresses_count.rb +18 -0
  651. data/test/requests/network/test_get_connection_shared_key.rb +24 -0
  652. data/test/requests/network/test_get_express_route_circuit.rb +24 -0
  653. data/test/requests/network/test_get_express_route_circuit_authorization.rb +24 -0
  654. data/test/requests/network/test_get_express_route_circuit_peering.rb +24 -0
  655. data/test/requests/network/test_get_load_balancer.rb +24 -0
  656. data/test/requests/network/test_get_local_network_gateway.rb +24 -0
  657. data/test/requests/network/test_get_network_interface.rb +24 -0
  658. data/test/requests/network/test_get_network_security_group.rb +26 -0
  659. data/test/requests/network/test_get_network_security_rule.rb +26 -0
  660. data/test/requests/network/test_get_public_ip.rb +26 -0
  661. data/test/requests/network/test_get_subnet.rb +26 -0
  662. data/test/requests/network/test_get_virtual_network.rb +26 -0
  663. data/test/requests/network/test_get_virtual_network_gateway.rb +24 -0
  664. data/test/requests/network/test_get_virtual_network_gateway_connection.rb +24 -0
  665. data/test/requests/network/test_list_express_route_circuit_authorizations.rb +24 -0
  666. data/test/requests/network/test_list_express_route_circuit_peerings.rb +24 -0
  667. data/test/requests/network/test_list_express_route_circuits.rb +26 -0
  668. data/test/requests/network/test_list_express_route_service_providers.rb +24 -0
  669. data/test/requests/network/test_list_load_balancers.rb +24 -0
  670. data/test/requests/network/test_list_local_network_gateways.rb +24 -0
  671. data/test/requests/network/test_list_network_interfaces.rb +24 -0
  672. data/test/requests/network/test_list_network_security_groups.rb +26 -0
  673. data/test/requests/network/test_list_network_security_rules.rb +26 -0
  674. data/test/requests/network/test_list_public_ips.rb +24 -0
  675. data/test/requests/network/test_list_subnets.rb +24 -0
  676. data/test/requests/network/test_list_virtual_network_gateway_connections.rb +24 -0
  677. data/test/requests/network/test_list_virtual_network_gateways.rb +24 -0
  678. data/test/requests/network/test_list_virtual_networks.rb +24 -0
  679. data/test/requests/network/test_list_virtual_networks_in_subscription.rb +24 -0
  680. data/test/requests/network/test_remove_address_prefixes_from_virtual_network.rb +29 -0
  681. data/test/requests/network/test_remove_dns_servers_from_virtual_network.rb +29 -0
  682. data/test/requests/network/test_remove_security_rule.rb +29 -0
  683. data/test/requests/network/test_remove_subnets_from_virtual_network.rb +29 -0
  684. data/test/requests/network/test_reset_connection_shared_key.rb +23 -0
  685. data/test/requests/network/test_set_connection_shared_key.rb +23 -0
  686. data/test/requests/network/test_update_public_ip.rb +35 -0
  687. data/test/requests/resources/test_check_azure_resource_exists.rb +22 -0
  688. data/test/requests/resources/test_check_deployment_exists.rb +29 -0
  689. data/test/requests/resources/test_check_resource_group_exists.rb +29 -0
  690. data/test/requests/resources/test_create_deployment.rb +32 -0
  691. data/test/requests/resources/test_create_resource_group.rb +25 -0
  692. data/test/requests/resources/test_delete_deployment.rb +25 -0
  693. data/test/requests/resources/test_delete_resource_group.rb +24 -0
  694. data/test/requests/resources/test_delete_resource_tag.rb +35 -0
  695. data/test/requests/resources/test_get_deployment.rb +24 -0
  696. data/test/requests/resources/test_get_resource_group.rb +24 -0
  697. data/test/requests/resources/test_list_deployments.rb +25 -0
  698. data/test/requests/resources/test_list_resource_groups.rb +24 -0
  699. data/test/requests/resources/test_list_tagged_resources.rb +24 -0
  700. data/test/requests/resources/test_tag_resource.rb +35 -0
  701. data/test/requests/sql/test_create_or_update_database.rb +25 -0
  702. data/test/requests/sql/test_create_or_update_firewall_rule.rb +25 -0
  703. data/test/requests/sql/test_create_or_update_sql_server.rb +25 -0
  704. data/test/requests/sql/test_delete_database.rb +23 -0
  705. data/test/requests/sql/test_delete_firewall_rule.rb +23 -0
  706. data/test/requests/sql/test_delete_sql_server.rb +23 -0
  707. data/test/requests/sql/test_get_database.rb +24 -0
  708. data/test/requests/sql/test_get_firewall_rule.rb +24 -0
  709. data/test/requests/sql/test_get_sql_server.rb +24 -0
  710. data/test/requests/sql/test_list_databases.rb +24 -0
  711. data/test/requests/sql/test_list_firewall_rules.rb +24 -0
  712. data/test/requests/sql/test_list_sql_servers.rb +24 -0
  713. data/test/requests/storage/test_acquire_blob_lease.rb +36 -0
  714. data/test/requests/storage/test_acquire_container_lease.rb +36 -0
  715. data/test/requests/storage/test_check_container_exists.rb +18 -0
  716. data/test/requests/storage/test_check_storage_account_exists.rb +41 -0
  717. data/test/requests/storage/test_check_storage_account_name_availability.rb +35 -0
  718. data/test/requests/storage/test_commit_blob_blocks.rb +34 -0
  719. data/test/requests/storage/test_compare_container_blobs.rb +36 -0
  720. data/test/requests/storage/test_copy_blob.rb +36 -0
  721. data/test/requests/storage/test_copy_blob_from_uri.rb +36 -0
  722. data/test/requests/storage/test_create_block_blob.rb +80 -0
  723. data/test/requests/storage/test_create_container.rb +36 -0
  724. data/test/requests/storage/test_create_disk.rb +70 -0
  725. data/test/requests/storage/test_create_page_blob.rb +34 -0
  726. data/test/requests/storage/test_create_storage_account.rb +34 -0
  727. data/test/requests/storage/test_delete_blob.rb +42 -0
  728. data/test/requests/storage/test_delete_container.rb +42 -0
  729. data/test/requests/storage/test_delete_disk.rb +30 -0
  730. data/test/requests/storage/test_delete_storage_account.rb +28 -0
  731. data/test/requests/storage/test_get_blob.rb +141 -0
  732. data/test/requests/storage/test_get_blob_http_url.rb +30 -0
  733. data/test/requests/storage/test_get_blob_https_url.rb +30 -0
  734. data/test/requests/storage/test_get_blob_properties.rb +45 -0
  735. data/test/requests/storage/test_get_blob_url.rb +75 -0
  736. data/test/requests/storage/test_get_container_acl.rb +37 -0
  737. data/test/requests/storage/test_get_container_properties.rb +45 -0
  738. data/test/requests/storage/test_get_container_url.rb +33 -0
  739. data/test/requests/storage/test_get_storage_access_keys.rb +24 -0
  740. data/test/requests/storage/test_get_storage_account.rb +25 -0
  741. data/test/requests/storage/test_list_blobs.rb +77 -0
  742. data/test/requests/storage/test_list_containers.rb +54 -0
  743. data/test/requests/storage/test_list_storage_accounts.rb +37 -0
  744. data/test/requests/storage/test_list_storage_accounts_for_rg.rb +37 -0
  745. data/test/requests/storage/test_multipart_save_block_blob.rb +105 -0
  746. data/test/requests/storage/test_put_blob_block.rb +34 -0
  747. data/test/requests/storage/test_put_blob_metadata.rb +36 -0
  748. data/test/requests/storage/test_put_blob_pages.rb +34 -0
  749. data/test/requests/storage/test_put_blob_properties.rb +39 -0
  750. data/test/requests/storage/test_put_container_acl.rb +34 -0
  751. data/test/requests/storage/test_put_container_metadata.rb +36 -0
  752. data/test/requests/storage/test_release_blob_lease.rb +34 -0
  753. data/test/requests/storage/test_release_container_lease.rb +34 -0
  754. data/test/requests/storage/test_save_page_blob.rb +115 -0
  755. data/test/requests/storage/test_update_storage_account.rb +34 -0
  756. data/test/requests/storage/test_wait_blob_copy_operation_to_finish.rb +148 -0
  757. data/test/requests/traffic_manager/test_check_traffic_manager_endpoint_exists.rb +38 -0
  758. data/test/requests/traffic_manager/test_check_traffic_manager_profile_exists.rb +38 -0
  759. data/test/requests/traffic_manager/test_create_traffic_manager_endpoint.rb +25 -0
  760. data/test/requests/traffic_manager/test_create_traffic_manager_profile.rb +25 -0
  761. data/test/requests/traffic_manager/test_delete_traffic_manager_endpoint.rb +23 -0
  762. data/test/requests/traffic_manager/test_delete_traffic_manager_profile.rb +23 -0
  763. data/test/requests/traffic_manager/test_get_traffic_manager_endpoint.rb +24 -0
  764. data/test/requests/traffic_manager/test_get_traffic_manager_profile.rb +24 -0
  765. data/test/requests/traffic_manager/test_list_traffic_manager_profiles.rb +24 -0
  766. data/test/requests/traffic_manager/test_update_traffic_manager_endpoint.rb +27 -0
  767. data/test/requests/traffic_manager/test_update_traffic_manager_profile.rb +27 -0
  768. data/test/smoke_tests/compute/test_resource_group_smoke.rb +37 -0
  769. data/test/test_credentials.rb +63 -0
  770. data/test/test_helper.rb +831 -0
  771. metadata +1050 -0
@@ -0,0 +1,40 @@
1
+ ## Getting Involved
2
+
3
+ New contributors are always welcome, when it doubt please ask questions. We strive to be an open and welcoming community. Please be nice to one another.
4
+
5
+ For structure information of fog click [here](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/structure.md)
6
+
7
+ ### Coding
8
+
9
+ * Pick a task:
10
+ * Offer feedback on open [pull requests](https://github.com/fog/fog-azure-rm/pulls).
11
+ * Review open [issues](https://github.com/fog/fog-azure-rm/issues) for things to help on.
12
+ * [Create an issue](https://github.com/fog/fog-azure-rm/issues/new) to start a discussion on additions or features.
13
+ * Fork the project, add your changes and tests to cover them in a topic branch.
14
+ * [Fork](https://github.com/fog/fog-azure-rm/fork)
15
+ * Create your feature branch (`git checkout -b my-new-feature`)
16
+ * Commit your changes (`git commit -am 'Add some feature'`)
17
+ * Push to the branch (`git push origin my-new-feature`)
18
+ * Create a new pull request
19
+ * Commit your changes and rebase against `fog/fog-azure-rm` to ensure everything is up to date.
20
+ * [Submit a pull request](https://github.com/fog/fog-azure-rm/compare/).
21
+
22
+ ### Non-Coding
23
+
24
+ * Offer feedback on open [issues](https://github.com/fog/fog-azure-rm/issues).
25
+ * Organize or volunteer at events.
26
+ * Write and help edit [documentation](https://github.com/fog/fog-azure-rm/tree/master/lib/fog/azurerm/docs).
27
+
28
+ ## Testing
29
+ You can run `Minitest` tests by running this command in the root directory.
30
+
31
+ ```shell
32
+ $ rake test
33
+ ```
34
+
35
+ ## Code Coverage
36
+ We are using Simplecov Gem for code coverage. You can see the report of Code Coverage by running this command in the root directory.
37
+
38
+ ```shell
39
+ $ rake coverage
40
+ ```
@@ -0,0 +1,12 @@
1
+
2
+ * Adnan Khalil <adnan.khalil@confiz.com>
3
+ * Samawia Moin <samawia.moin@confiz.com>
4
+ * Shaffan Chaudhry <shaffan.chaudhry@confiz.com>
5
+ * Zeeshan Arshad <zeeshan.arshad@confiz.com>
6
+ * Haider Ali <haider.ali@confiz.com>
7
+ * Waqar Haider <waqar.haider@confiz.com>
8
+ * Bilal Naeem <bilal.naeem@confiz.com>
9
+ * Azeem Sajid <azeem.sajid@confiz.com>
10
+ * Maham Nazir <maham.nazir@confiz.com>
11
+ * Muhammad Asad <muhammad.asad@confiz.com>
12
+ * Muhammad Abbas Sheikh <abbas.sheikh@confiz.com>
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+ # Specify your gem's dependencies in fog-azure-rm.gemspec
3
+ gemspec
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2014-2015 [CONTRIBUTORS.md](https://github.com/fog/fog-azure-rm/blob/master/CONTRIBUTORS.md)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,96 @@
1
+ [![Gem Version](https://badge.fury.io/rb/fog-azure-rm.svg)](https://badge.fury.io/rb/fog-azure-rm)
2
+ [![Build Status](https://travis-ci.org/fog/fog-azure-rm.svg?branch=master)](https://travis-ci.org/fog/fog-azure-rm)
3
+ [![Dependency Status](https://gemnasium.com/badges/github.com/fog/fog-azure-rm.svg)](https://gemnasium.com/github.com/fog/fog-azure-rm)
4
+ [![Test Coverage](https://codeclimate.com/github/fog/fog-azure-rm/badges/coverage.svg)](https://codeclimate.com/github/fog/fog-azure-rm/coverage)
5
+ [![Code Climate](https://codeclimate.com/github/fog/fog-azure-rm/badges/gpa.svg)](https://codeclimate.com/github/fog/fog-azure-rm)
6
+ [![Stories in Ready](https://badge.waffle.io/fog/fog-azure-rm.svg?label=ready&title=Ready)](http://waffle.io/fog/fog-azure-rm)
7
+
8
+ # Fog Azure Resource Manager
9
+
10
+ This document describes how to get started with Fog using Microsoft Azure as a cloud resource management services provider.
11
+
12
+ ## Pre-requisites
13
+
14
+ * Fog-azure-rm supports Ruby version 2.0.0 or later
15
+
16
+ ## Installation
17
+
18
+ Add this line to your application's Gemfile:
19
+
20
+ ```ruby
21
+ gem 'fog-azure-rm'
22
+ ```
23
+
24
+ And then execute:
25
+
26
+ $ bundle
27
+
28
+ Or install it yourself as:
29
+
30
+ $ gem install fog-azure-rm
31
+
32
+
33
+ ## Usage
34
+
35
+ You can use this gem against the Microsoft Azure Resource Manager Services in the cloud. Of course, to use the Microsoft Azure Resource Manager Services in the cloud, you need to first [create a Microsoft Azure account](http://www.azure.com/en-us/pricing/free-trial/).
36
+ * Set 'LOCATION' constant based on the Azure cloud you are using in [config.rb] (https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/config.rb) file. By default it will be 'eastus'.
37
+
38
+ ### Authentication
39
+
40
+ The next step to use this gem, is authentication and permissioning. It is important to get familiar with this concept. For a reference on setting up a service principal from the command line see
41
+ [Authenticating a service principal with Azure Resource Manager](http://aka.ms/cli-service-principal) or
42
+ [Unattended Authentication](http://aka.ms/auth-unattended). For a more robust explanation of authentication in Azure,
43
+ see [Developer’s guide to auth with Azure Resource Manager API](http://aka.ms/arm-auth-dev-guide).
44
+
45
+ After creating the service principal, you should have three pieces of information, a client id (GUID), client secret
46
+ (string) and tenant id (GUID).
47
+
48
+ ### Compute
49
+
50
+ Fog-AzureRM for compute includes implementation of Virtual Machines and Availability Sets. Readme for the usage of [Compute](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/compute.md) module.
51
+
52
+ ### Resources
53
+
54
+ Fog-AzureRM for resources includes implementation of Resource Groups. Readme for the usage of [Resources](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/resources.md) module.
55
+
56
+ ### DNS
57
+
58
+ Fog-AzureRM for dns includes implementation of Record sets and Zones. Readme for the usage of [DNS](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/dns.md) module.
59
+
60
+ ### Network
61
+
62
+ Fog-AzureRM for network includes implementation of Network Interfaces, Public IPs, Subnets and Virtual Networks. Readme for the usage of [Network](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/network.md) module.
63
+
64
+ ### Storage
65
+
66
+ Fog-AzureRM for storage includes implementation of Storage Accounts. Readme for the usage of [Storage](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/storage.md) module.
67
+
68
+ ### Traffic Manager
69
+
70
+ Fog-AzureRM for Traffic Manager includes implementation of Traffic Manager Profile and Traffic Manager End-points. Readme for the usage of [Traffic Manager](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/traffic_manager.md) module.
71
+
72
+ ### SQL
73
+
74
+ Fog-AzureRM for SQL includes implementation of SQL Server, SQL Databases and Data Warehouse. Readme for the usage of [Azure SQL](https://github.com/fog/fog-azure-rm/blob/master/lib/fog/azurerm/docs/sql.md) module.
75
+
76
+ ## Supported Services
77
+
78
+ Use following command for the complete list of services, Fog provides for Azure Resource Manager.
79
+
80
+ ```ruby
81
+ Fog::AzureRM.services
82
+ ```
83
+
84
+
85
+ ## Contributing
86
+
87
+ See [CONTRIBUTING.md](https://github.com/fog/fog-azure-rm/blob/master/CONTRIBUTING.md) in this repository.
88
+
89
+ ## License
90
+
91
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
92
+
93
+
94
+
95
+
96
+
@@ -0,0 +1,37 @@
1
+ lib = File.expand_path('../lib', __FILE__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+ require 'fog/azurerm/version'
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = 'far-gem'
7
+ spec.version = Fog::AzureRM::VERSION
8
+ spec.authors = ['Shaffan Chaudhry', 'Samawia Moin', 'Adnan Khalil', 'Zeeshan Arshad', 'Haider Ali', 'Waqar Haider', 'Bilal Naeem', 'Muhammad Asad', 'Azeem Sajid', 'Maham Nazir', 'Abbas Sheikh']
9
+ spec.summary = "Module for the 'fog' gem to support Azure Resource Manager cloud services."
10
+ spec.description = "This library can be used as a module for 'fog' or as standalone provider
11
+ to use the Azure Resource Manager cloud services in applications.."
12
+ spec.files = `git ls-files`.split("\n")
13
+ spec.test_files = `git ls-files -- {spec,tests}/*`.split("\n")
14
+ spec.require_paths = %w[lib]
15
+ spec.license = 'MIT'
16
+ spec.homepage = 'https://github.com/maham-nazir-confiz/fog-azure-rm'
17
+ spec.rdoc_options = %w[--charset=UTF-8]
18
+ spec.extra_rdoc_files = %w[README.md]
19
+ spec.required_ruby_version = '>= 2.0.0'
20
+ spec.post_install_message = 'Thanks for installing!'
21
+ spec.add_development_dependency 'rake', '~> 10.0'
22
+ spec.add_development_dependency 'minitest', '~> 5.8.4'
23
+ spec.add_development_dependency 'simplecov'
24
+ spec.add_development_dependency 'codeclimate-test-reporter' , '~> 1.0.0'
25
+ spec.add_dependency 'fog-core', '~> 2.0'
26
+ spec.add_dependency 'fog-json', '~> 1.0'
27
+ spec.add_dependency 'azure_mgmt_compute', '~> 0.9.0'
28
+ spec.add_dependency 'azure_mgmt_resources', '~> 0.9.0'
29
+ spec.add_dependency 'azure_mgmt_storage', '~> 0.9.0'
30
+ spec.add_dependency 'azure_mgmt_network', '~> 0.9.0'
31
+ spec.add_dependency 'azure_mgmt_dns', '~> 0.9.0'
32
+ spec.add_dependency 'azure_mgmt_traffic_manager', '~> 0.9.0'
33
+ spec.add_dependency 'azure_mgmt_sql', '~> 0.9.0'
34
+ spec.add_dependency 'azure_mgmt_key_vault', '~> 0.9.0'
35
+ spec.add_dependency 'azure-storage', '= 0.11.5.preview'
36
+ spec.add_dependency 'vhd', '0.0.4'
37
+ end
@@ -0,0 +1,88 @@
1
+ require 'ms_rest_azure'
2
+ require 'erb'
3
+ require 'fog/azurerm/config'
4
+ require 'fog/azurerm/constants'
5
+ require 'fog/azurerm/utilities/general'
6
+ require 'fog/azurerm/version'
7
+ require 'fog/core'
8
+ require 'fog/json'
9
+ require 'fog/azurerm/models/compute/caching_types'
10
+ require 'fog/azurerm/models/compute/disk_create_option_types'
11
+ require 'fog/azurerm/models/network/ipallocation_method'
12
+ require 'fog/azurerm/models/network/security_rule_access'
13
+ require 'fog/azurerm/models/network/security_rule_direction'
14
+ require 'fog/azurerm/models/network/security_rule_protocol'
15
+ require 'fog/azurerm/models/storage/sku_name'
16
+ require 'fog/azurerm/models/storage/sku_tier'
17
+ require 'fog/azurerm/models/storage/kind'
18
+
19
+ module Fog
20
+ # Autoload Module for Credentials
21
+ module Credentials
22
+ autoload :AzureRM, File.expand_path('azurerm/credentials', __dir__)
23
+ end
24
+
25
+ # Autoload Module for Compute
26
+ module Compute
27
+ autoload :AzureRM, File.expand_path('azurerm/compute', __dir__)
28
+ end
29
+
30
+ # Autoload Module for DNS
31
+ module DNS
32
+ autoload :AzureRM, File.expand_path('azurerm/dns', __dir__)
33
+ end
34
+
35
+ # Autoload Module for Network
36
+ module Network
37
+ autoload :AzureRM, File.expand_path('azurerm/network', __dir__)
38
+ end
39
+
40
+ # Autoload Module for Resources
41
+ module Resources
42
+ autoload :AzureRM, File.expand_path('azurerm/resources', __dir__)
43
+ end
44
+
45
+ # Autoload Module for TrafficManager
46
+ module TrafficManager
47
+ autoload :AzureRM, File.expand_path('azurerm/traffic_manager', __dir__)
48
+ end
49
+
50
+ # Autoload Module for Storage
51
+ module Storage
52
+ autoload :AzureRM, File.expand_path('azurerm/storage', __dir__)
53
+ end
54
+
55
+ # Autoload Module for ApplicationGateway
56
+ module ApplicationGateway
57
+ autoload :AzureRM, File.expand_path('azurerm/application_gateway', __dir__)
58
+ end
59
+
60
+ # Autoload Module for Sql
61
+ module Sql
62
+ autoload :AzureRM, File.expand_path('azurerm/sql', __dir__)
63
+ end
64
+
65
+ # Autoload Module for KeyVault
66
+ module KeyVault
67
+ autoload :AzureRM, File.expand_path('azurerm/key_vault', __dir__)
68
+ end
69
+
70
+ # Autoload Module for Response::Asynchronous
71
+ module AzureRM
72
+ autoload :AsyncResponse, File.expand_path('azurerm/async_response', __dir__)
73
+ end
74
+
75
+ # Main AzureRM fog Provider Module
76
+ module AzureRM
77
+ extend Fog::Provider
78
+ service(:resources, 'Resources')
79
+ service(:dns, 'DNS')
80
+ service(:storage, 'Storage')
81
+ service(:network, 'Network')
82
+ service(:compute, 'Compute')
83
+ service(:application_gateway, 'ApplicationGateway')
84
+ service(:traffic_manager, 'TrafficManager')
85
+ service(:sql, 'Sql')
86
+ service(:key_vault, 'KeyVault')
87
+ end
88
+ end
@@ -0,0 +1,75 @@
1
+ module Fog
2
+ module ApplicationGateway
3
+ # Fog Service Class for AzureRM
4
+ class AzureRM < Fog::Service
5
+ requires :tenant_id
6
+ requires :client_id
7
+ requires :client_secret
8
+ requires :subscription_id
9
+ recognizes :environment
10
+
11
+ request_path 'fog/azurerm/requests/application_gateway'
12
+ request :create_or_update_application_gateway
13
+ request :delete_application_gateway
14
+ request :list_application_gateways
15
+ request :get_application_gateway
16
+ request :check_ag_exists
17
+ request :update_subnet_id_in_gateway_ip_configuration
18
+ request :update_sku_attributes
19
+ request :start_application_gateway
20
+ request :stop_application_gateway
21
+
22
+ model_path 'fog/azurerm/models/application_gateway'
23
+ model :gateway
24
+ collection :gateways
25
+ model :backend_address_pool
26
+ model :backend_http_setting
27
+ model :frontend_ip_configuration
28
+ model :frontend_port
29
+ model :ip_configuration
30
+ model :http_listener
31
+ model :probe
32
+ model :request_routing_rule
33
+ model :ssl_certificate
34
+ model :url_path_map
35
+
36
+ # Mock class for Application Gateway Service
37
+ class Mock
38
+ def initialize(_options = {})
39
+ begin
40
+ require 'azure_mgmt_network'
41
+ rescue LoadError => e
42
+ retry if require('rubygems')
43
+ raise e.message
44
+ end
45
+ end
46
+ end
47
+
48
+ # Real class for Application Gateway Service
49
+ class Real
50
+ def initialize(options = {})
51
+ begin
52
+ require 'azure_mgmt_network'
53
+ rescue LoadError => e
54
+ retry if require('rubygems')
55
+ raise e.message
56
+ end
57
+
58
+ telemetry = "fog-azure-rm/#{Fog::AzureRM::VERSION}"
59
+
60
+ options[:environment] = 'AzureCloud' if options[:environment].nil?
61
+
62
+ credentials = Fog::Credentials::AzureRM.get_credentials(options[:tenant_id], options[:client_id], options[:client_secret], options[:environment])
63
+ @network_client = ::Azure::ARM::Network::NetworkManagementClient.new(credentials, resource_manager_endpoint_url(options[:environment]))
64
+ @network_client.subscription_id = options[:subscription_id]
65
+ @network_client.add_user_agent_information(telemetry)
66
+ @tenant_id = options[:tenant_id]
67
+ @client_id = options[:client_id]
68
+ @client_secret = options[:client_secret]
69
+ @subscription_id = options[:subscription_id]
70
+ @environment = options[:environment]
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,44 @@
1
+ module Fog
2
+ module AzureRM
3
+ # class for Async Response
4
+ class AsyncResponse
5
+ def initialize(model, promise, delete_extra_resource = false, post_method_execute = nil)
6
+ @fog_model = model
7
+ @promise = promise
8
+ @delete_extra_resource = delete_extra_resource
9
+ @post_method_execute = post_method_execute
10
+ end
11
+
12
+ def value
13
+ response = @promise.value.body
14
+ @fog_model.merge_attributes(@fog_model.class.parse(response))
15
+ @fog_model.delete_extra_resources if @delete_extra_resource
16
+ # This code block will execute the method mentioned in post_method_execute after getting the response
17
+ unless @post_method_execute.nil?
18
+ @fog_model.public_send(@post_method_execute) if @fog_model.respond_to? @post_method_execute
19
+ end
20
+ @fog_model
21
+ end
22
+
23
+ def state
24
+ @promise.state
25
+ end
26
+
27
+ def reason
28
+ @promise.reason
29
+ end
30
+
31
+ def pending?
32
+ @promise.pending?
33
+ end
34
+
35
+ def fulfilled?
36
+ @promise.fulfilled?
37
+ end
38
+
39
+ def rejected?
40
+ @promise.rejected?
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,102 @@
1
+ module Fog
2
+ module Compute
3
+ # This class registers models, requests and collections
4
+ class AzureRM < Fog::Service
5
+ requires :tenant_id
6
+ requires :client_id
7
+ requires :client_secret
8
+ requires :subscription_id
9
+ recognizes :environment
10
+
11
+ request_path 'fog/azurerm/requests/compute'
12
+ request :create_availability_set
13
+ request :delete_availability_set
14
+ request :list_availability_sets
15
+ request :get_availability_set
16
+ request :check_availability_set_exists
17
+ request :create_virtual_machine
18
+ request :delete_virtual_machine
19
+ request :get_virtual_machine
20
+ request :list_virtual_machines
21
+ request :list_available_sizes_for_virtual_machine
22
+ request :generalize_virtual_machine
23
+ request :deallocate_virtual_machine
24
+ request :power_off_virtual_machine
25
+ request :redeploy_virtual_machine
26
+ request :restart_virtual_machine
27
+ request :start_virtual_machine
28
+ request :check_vm_status
29
+ request :check_vm_exists
30
+ request :attach_data_disk_to_vm
31
+ request :detach_data_disk_from_vm
32
+ request :create_or_update_vm_extension
33
+ request :delete_vm_extension
34
+ request :get_vm_extension
35
+ request :check_vm_extension_exists
36
+ request :create_or_update_managed_disk
37
+ request :delete_managed_disk
38
+ request :get_managed_disk
39
+ request :check_managed_disk_exists
40
+ request :list_managed_disks_by_rg
41
+ request :list_managed_disks_in_subscription
42
+ request :revoke_access_to_managed_disk
43
+ request :grant_access_to_managed_disk
44
+ request :create_image
45
+ request :delete_image
46
+ request :get_image
47
+
48
+ model_path 'fog/azurerm/models/compute'
49
+ model :availability_set
50
+ collection :availability_sets
51
+ model :server
52
+ collection :servers
53
+ model :virtual_machine_extension
54
+ collection :virtual_machine_extensions
55
+ model :managed_disk
56
+ collection :managed_disks
57
+ model :data_disk
58
+ model :creation_data
59
+ model :disk_create_option
60
+ model :encryption_settings
61
+ model :image_disk_reference
62
+ model :operation_status_response
63
+
64
+ # This class provides the mock implementation for unit tests.
65
+ class Mock
66
+ def initialize(_options = {})
67
+ begin
68
+ require 'azure_mgmt_compute'
69
+ rescue LoadError => e
70
+ retry if require('rubygems')
71
+ raise e.message
72
+ end
73
+ end
74
+ end
75
+ # This class provides the actual implementation for service calls.
76
+ class Real
77
+ def initialize(options)
78
+ begin
79
+ require 'azure_mgmt_compute'
80
+ require 'azure_mgmt_storage'
81
+ require 'azure/storage'
82
+ rescue LoadError => e
83
+ retry if require('rubygems')
84
+ raise e.message
85
+ end
86
+
87
+ options[:environment] = 'AzureCloud' if options[:environment].nil?
88
+
89
+ telemetry = "fog-azure-rm/#{Fog::AzureRM::VERSION}"
90
+ credentials = Fog::Credentials::AzureRM.get_credentials(options[:tenant_id], options[:client_id], options[:client_secret], options[:environment])
91
+ @compute_mgmt_client = ::Azure::ARM::Compute::ComputeManagementClient.new(credentials, resource_manager_endpoint_url(options[:environment]))
92
+ @compute_mgmt_client.subscription_id = options[:subscription_id]
93
+ @compute_mgmt_client.add_user_agent_information(telemetry)
94
+ @storage_mgmt_client = ::Azure::ARM::Storage::StorageManagementClient.new(credentials, resource_manager_endpoint_url(options[:environment]))
95
+ @storage_mgmt_client.subscription_id = options[:subscription_id]
96
+ @storage_mgmt_client.add_user_agent_information(telemetry)
97
+ @storage_service = Fog::Storage::AzureRM.new(tenant_id: options[:tenant_id], client_id: options[:client_id], client_secret: options[:client_secret], subscription_id: options[:subscription_id], environment: options[:environment])
98
+ end
99
+ end
100
+ end
101
+ end
102
+ end