Top Level Namespace
Defined Under Namespace
Modules: Fog
Constant Summary collapse
- AZURE_RESOURCE =
'https://management.azure.com'.freeze
- DEFAULT_ADDRESS_PREFIXES =
['10.2.0.0/16'].freeze
- SUBNET =
'Subnet'.freeze
- PUBLIC_IP =
'Public-IP-Address'.freeze
- NETWORK_SECURITY_GROUP =
'Network-Security-Group'.freeze
- STANDARD_STORAGE =
'Standard'.freeze
- PREMIUM_STORAGE =
'Premium'.freeze
- ALLOWED_STANDARD_REPLICATION =
%w(LRS ZRS GRS RAGRS).freeze
- API_VERSION =
'2016-06-01'.freeze
- FAULT_DOMAIN_COUNT =
3.freeze
- UPDATE_DOMAIN_COUNT =
5.freeze
- WINDOWS =
'windows'.freeze
- VPN =
'Vpn'.freeze
- MICROSOFT_PEERING =
'MicrosoftPeering'.freeze
- RESOURCE_GROUP_NAME =
4- RESOURCE_PROVIDER_NAMESPACE =
6- RESOURCE_TYPE =
7- RESOURCE_NAME =
8- AZURE_ENDPOINTS =
'azureEndpoints'.freeze
- EXTERNAL_ENDPOINTS =
'externalEndpoints'.freeze
- NESTED_ENDPOINTS =
'nestedEndpoints'.freeze
- GLOBAL =
'global'.freeze
- WHITE_SPACE =
' '.freeze
Instance Method Summary collapse
-
#get_circuit_name_from_id(circuit_id) ⇒ Object
Pick Express Route Circuit name from Id(String).
-
#get_end_point_type(endpoint_type) ⇒ Object
Extract Endpoint type from (String).
- #get_hash_from_object(object) ⇒ Object
- #get_record_set_from_id(id) ⇒ Object
- #get_record_type(type) ⇒ Object
- #get_resource_from_resource_id(resource_id, position) ⇒ Object
-
#get_resource_group_from_id(id) ⇒ Object
Pick Resource Group name from Azure Resource Id(String).
-
#get_server_name_from_id(database_id) ⇒ Object
Get server name from ID (String).
-
#get_traffic_manager_profile_name_from_endpoint_id(endpoint_id) ⇒ Object
Extract Traffic Manager Profile Name from Endpoint id(String).
- #get_type_from_recordset_type(type) ⇒ Object
-
#get_virtual_machine_from_id(vme_id) ⇒ Object
Pick Virtual Machine name from Virtual Machine Extension Id(String).
-
#get_virtual_network_from_id(subnet_id) ⇒ Object
Pick Virtual Network name from Subnet Resource Id(String).
- #raise_azure_exception(exception, msg) ⇒ Object
- #random_string(length) ⇒ Object
-
#validate_params(required_params, input_params) ⇒ Object
Make sure if input_params(Hash) contains all keys present in required_params(Array).
Instance Method Details
#get_circuit_name_from_id(circuit_id) ⇒ Object
Pick Express Route Circuit name from Id(String)
46 47 48 |
# File 'lib/fog/azurerm/utilities/general.rb', line 46 def get_circuit_name_from_id(circuit_id) circuit_id.split('/')[8] end |
#get_end_point_type(endpoint_type) ⇒ Object
Extract Endpoint type from (String)
17 18 19 |
# File 'lib/fog/azurerm/utilities/general.rb', line 17 def get_end_point_type(endpoint_type) endpoint_type.split('/')[2] end |
#get_hash_from_object(object) ⇒ Object
29 30 31 32 33 |
# File 'lib/fog/azurerm/utilities/general.rb', line 29 def get_hash_from_object(object) hash = {} object.instance_variables.each { |attr| hash[attr.to_s.delete('@')] = object.instance_variable_get(attr) } hash end |
#get_record_set_from_id(id) ⇒ Object
21 22 23 |
# File 'lib/fog/azurerm/utilities/general.rb', line 21 def get_record_set_from_id(id) id.split('/')[8] end |
#get_record_type(type) ⇒ Object
50 51 52 |
# File 'lib/fog/azurerm/utilities/general.rb', line 50 def get_record_type(type) type.split('/').last end |
#get_resource_from_resource_id(resource_id, position) ⇒ Object
73 74 75 76 77 78 79 |
# File 'lib/fog/azurerm/utilities/general.rb', line 73 def get_resource_from_resource_id(resource_id, position) data = resource_id.split('/') unless resource_id.nil? raise 'Invalid Resource ID' if data.count < 9 && data.count != 5 data[position] end |
#get_resource_group_from_id(id) ⇒ Object
Pick Resource Group name from Azure Resource Id(String)
2 3 4 |
# File 'lib/fog/azurerm/utilities/general.rb', line 2 def get_resource_group_from_id(id) id.split('/')[4] end |
#get_server_name_from_id(database_id) ⇒ Object
Get server name from ID (String)
41 42 43 |
# File 'lib/fog/azurerm/utilities/general.rb', line 41 def get_server_name_from_id(database_id) database_id.split('/')[8] end |
#get_traffic_manager_profile_name_from_endpoint_id(endpoint_id) ⇒ Object
Extract Traffic Manager Profile Name from Endpoint id(String)
36 37 38 |
# File 'lib/fog/azurerm/utilities/general.rb', line 36 def get_traffic_manager_profile_name_from_endpoint_id(endpoint_id) endpoint_id.split('/')[8] end |
#get_type_from_recordset_type(type) ⇒ Object
25 26 27 |
# File 'lib/fog/azurerm/utilities/general.rb', line 25 def get_type_from_recordset_type(type) type.split('/')[2] end |
#get_virtual_machine_from_id(vme_id) ⇒ Object
Pick Virtual Machine name from Virtual Machine Extension Id(String)
12 13 14 |
# File 'lib/fog/azurerm/utilities/general.rb', line 12 def get_virtual_machine_from_id(vme_id) vme_id.split('/')[8] end |
#get_virtual_network_from_id(subnet_id) ⇒ Object
Pick Virtual Network name from Subnet Resource Id(String)
7 8 9 |
# File 'lib/fog/azurerm/utilities/general.rb', line 7 def get_virtual_network_from_id(subnet_id) subnet_id.split('/')[8] end |
#raise_azure_exception(exception, msg) ⇒ Object
54 55 56 57 58 59 60 61 62 |
# File 'lib/fog/azurerm/utilities/general.rb', line 54 def raise_azure_exception(exception, msg) = if exception.respond_to? 'body' "Exception in #{msg} #{exception.body['error']['message'] unless exception.body['error']['message'].nil?} Type: #{exception.class} \n " else exception.inspect end Fog::Logger.debug exception.backtrace raise end |
#random_string(length) ⇒ Object
81 82 83 |
# File 'lib/fog/azurerm/utilities/general.rb', line 81 def random_string(length) (0...length).map { ('a'..'z').to_a[rand(26)] }.join end |
#validate_params(required_params, input_params) ⇒ Object
Make sure if input_params(Hash) contains all keys present in required_params(Array)
65 66 67 68 69 70 71 |
# File 'lib/fog/azurerm/utilities/general.rb', line 65 def validate_params(required_params, input_params) missing_params = required_params.select { |param| param unless input_params.key?(param) } if missing_params.any? raise(ArgumentError, "Missing Parameters: #{missing_params.join(', ')} required for this operation") end end |