lib/fog/azurerm/utilities/general.rb in fog-azure-rm-0.4.5 vs lib/fog/azurerm/utilities/general.rb in fog-azure-rm-0.4.6
- old
+ new
@@ -1,5 +1,7 @@
+require File.expand_path('../../custom_fog_errors.rb', __FILE__)
+
# Pick Resource Group name from Azure Resource Id(String)
def get_resource_group_from_id(id)
id.split('/')[4]
end
@@ -45,14 +47,12 @@
def get_record_type(type)
type.split('/').last
end
def raise_azure_exception(exception, msg)
- description = exception.is_a?(Azure::Core::Http::HTTPError) ? exception.description : exception.error_message
- exception_message = "Exception in #{msg} #{description} Type: #{exception.class}\n#{exception.backtrace.join('\n')}"
-
- Fog::Logger.debug exception.backtrace
- raise exception_message
+ raise Fog::AzureRM::CustomAzureCoreHttpError.new(exception) if exception.is_a?(Azure::Core::Http::HTTPError)
+ raise Fog::AzureRM::CustomAzureOperationError.new(msg, exception) if exception.is_a?(MsRestAzure::AzureOperationError)
+ raise exception
end
# Make sure if input_params(Hash) contains all keys present in required_params(Array)
def validate_params(required_params, input_params)
missing_params = required_params.select { |param| param unless input_params.key?(param) }