2010-06-10 22:04:06 -04:00
|
|
|
module Fog
|
|
|
|
module Errors
|
|
|
|
|
|
|
|
class Error < StandardError
|
|
|
|
attr_accessor :verbose
|
2010-06-12 02:11:02 -04:00
|
|
|
|
|
|
|
def self.slurp(error, message = nil)
|
|
|
|
new_error = new(message)
|
|
|
|
new_error.set_backtrace(error.backtrace)
|
|
|
|
new_error.verbose = error.message
|
|
|
|
new_error
|
|
|
|
end
|
2010-06-10 22:04:06 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
class MockNotImplemented < Fog::Errors::Error; end
|
|
|
|
|
|
|
|
class NotFound < Fog::Errors::Error; end
|
|
|
|
|
2011-08-14 09:03:43 -04:00
|
|
|
class LoadError < LoadError; end
|
|
|
|
|
2011-05-04 16:12:52 -04:00
|
|
|
# @return [String] The error message that will be raised, if credentials cannot be found
|
|
|
|
def self.missing_credentials
|
|
|
|
missing_credentials_message = <<-YML
|
|
|
|
Missing Credentials
|
|
|
|
|
|
|
|
To run as '#{Fog.credential}', add the following to your resource config file: #{Fog.credentials_path}
|
|
|
|
An alternate file may be used by placing its path in the FOG_RC environment variable
|
|
|
|
|
|
|
|
#######################################################
|
|
|
|
# Fog Credentials File
|
|
|
|
#
|
|
|
|
# Key-value pairs should look like:
|
|
|
|
# :aws_access_key_id: 022QF06E7MXBSAMPLE
|
|
|
|
:#{Fog.credential}:
|
|
|
|
:aws_access_key_id:
|
|
|
|
:aws_secret_access_key:
|
|
|
|
:bluebox_api_key:
|
|
|
|
:bluebox_customer_id:
|
|
|
|
:brightbox_client_id:
|
|
|
|
:brightbox_secret:
|
|
|
|
:go_grid_api_key:
|
|
|
|
:go_grid_shared_secret:
|
|
|
|
:google_storage_access_key_id:
|
|
|
|
:google_storage_secret_access_key:
|
|
|
|
:linode_api_key:
|
|
|
|
:local_root:
|
|
|
|
:new_servers_password:
|
|
|
|
:new_servers_username:
|
|
|
|
:public_key_path:
|
|
|
|
:private_key_path:
|
2011-09-26 02:41:54 -04:00
|
|
|
:openstack_api_key:
|
|
|
|
:openstack_username:
|
|
|
|
:openstack_auth_url:
|
|
|
|
:openstack_tenant:
|
2011-05-04 16:12:52 -04:00
|
|
|
:rackspace_api_key:
|
|
|
|
:rackspace_username:
|
|
|
|
:rackspace_servicenet:
|
|
|
|
:rackspace_cdn_ssl:
|
|
|
|
:slicehost_password:
|
|
|
|
:stormondemand_username:
|
|
|
|
:stormondemand_password:
|
|
|
|
:terremark_username:
|
|
|
|
:terremark_password:
|
|
|
|
:voxel_api_key:
|
|
|
|
:voxel_api_secret:
|
|
|
|
:zerigo_email:
|
|
|
|
:zerigo_token:
|
|
|
|
:dnsimple_email:
|
|
|
|
:dnsimple_password:
|
2011-05-29 19:41:27 -04:00
|
|
|
:dnsmadeeasy_api_key:
|
|
|
|
:dnsmadeeasy_secret_key:
|
2011-08-29 23:04:04 -04:00
|
|
|
:vsphere_server:
|
|
|
|
:vsphere_username:
|
|
|
|
:vsphere_password:
|
2011-09-12 10:08:29 -04:00
|
|
|
:libvirt_username:
|
|
|
|
:libvirt_password:
|
|
|
|
:libvirt_uri:
|
2011-09-12 10:12:32 -04:00
|
|
|
:libvirt_ip_command:
|
2011-05-04 16:12:52 -04:00
|
|
|
#
|
|
|
|
# End of Fog Credentials File
|
|
|
|
#######################################################
|
|
|
|
|
|
|
|
YML
|
2011-08-14 09:03:43 -04:00
|
|
|
raise(Fog::Errors::LoadError.new(missing_credentials_message))
|
2011-05-04 16:12:52 -04:00
|
|
|
end
|
|
|
|
|
2010-06-10 22:04:06 -04:00
|
|
|
end
|
2011-08-29 23:04:04 -04:00
|
|
|
end
|