mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
[ec2] fix some leftovers from mocking/dependency cleanup
This commit is contained in:
parent
f08f98f6bf
commit
860da961f0
1 changed files with 147 additions and 163 deletions
310
lib/fog/aws.rb
310
lib/fog/aws.rb
|
@ -1,19 +1,10 @@
|
|||
require 'fog/aws/ec2.rb'
|
||||
require 'fog/aws/s3'
|
||||
require 'fog/aws/simpledb'
|
||||
|
||||
module Fog
|
||||
module AWS
|
||||
|
||||
def self.dependencies
|
||||
[
|
||||
'fog/aws/ec2.rb'
|
||||
]
|
||||
end
|
||||
|
||||
def self.reload
|
||||
self.dependencies.each {|dependency| load(dependency)}
|
||||
end
|
||||
|
||||
def self.indexed_param(key, values)
|
||||
params = {}
|
||||
[*values].each_with_index do |value, index|
|
||||
|
@ -22,161 +13,154 @@ module Fog
|
|||
params
|
||||
end
|
||||
|
||||
if Fog.mocking?
|
||||
srand(Time.now.to_i)
|
||||
|
||||
class Mock
|
||||
|
||||
def self.availability_zone
|
||||
"us-east-1" << random_selection('abcd', 1)
|
||||
end
|
||||
|
||||
def self.box_usage
|
||||
sprintf("%0.10f", rand / 100).to_f
|
||||
end
|
||||
|
||||
def self.console_output
|
||||
'This is my console. There are many like it, but this one is mine. My console is my best friend. It is my life. I must master it as I master my life. My console, without me, is useless. Without my console, I am useless.'
|
||||
end
|
||||
|
||||
def self.etag
|
||||
hex(32)
|
||||
end
|
||||
|
||||
def self.image
|
||||
path = []
|
||||
(rand(3) + 2).times do
|
||||
path << letters(rand(9) + 8)
|
||||
end
|
||||
{
|
||||
"imageOwnerId" => letters(rand(5) + 4),
|
||||
"productCodes" => [],
|
||||
"kernelId" => kernel_id,
|
||||
"ramdiskId" => ramdisk_id,
|
||||
"imageState" => "available",
|
||||
"imageId" => image_id,
|
||||
"architecture" => "i386",
|
||||
"isPublic" => true,
|
||||
"imageLocation" => path.join('/'),
|
||||
"imageType" => "machine"
|
||||
}
|
||||
end
|
||||
|
||||
def self.image_id
|
||||
"ami-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.key_fingerprint
|
||||
fingerprint = []
|
||||
20.times do
|
||||
fingerprint << hex(2)
|
||||
end
|
||||
fingerprint.join(':')
|
||||
end
|
||||
|
||||
def self.image_id
|
||||
"ami-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.instance_id
|
||||
"i-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.ip_address
|
||||
ip = []
|
||||
4.times do
|
||||
ip << numbers(rand(3) + 1).to_i.to_s # remove leading 0
|
||||
end
|
||||
ip.join('.')
|
||||
end
|
||||
|
||||
def self.kernel_id
|
||||
"aki-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.key_material
|
||||
key_material = ['-----BEGIN RSA PRIVATE KEY-----']
|
||||
20.times do
|
||||
key_material << base64(76)
|
||||
end
|
||||
key_material << base64(67) + '='
|
||||
key_material << '-----END RSA PRIVATE KEY-----'
|
||||
key_material.join("\n")
|
||||
end
|
||||
|
||||
def self.owner_id
|
||||
numbers(12)
|
||||
end
|
||||
|
||||
def self.ramdisk_id
|
||||
"ari-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.request_id
|
||||
request_id = []
|
||||
request_id << hex(8)
|
||||
3.times do
|
||||
request_id << hex(4)
|
||||
end
|
||||
request_id << hex(12)
|
||||
request_id.join('-')
|
||||
end
|
||||
|
||||
def self.reservation_id
|
||||
"r-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.snapshot_id
|
||||
"snap-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.volume_id
|
||||
"vol-#{hex(8)}"
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def self.random_selection(characters, length)
|
||||
selection = ''
|
||||
length.times do
|
||||
position = rand(characters.length)
|
||||
selection << characters[position..position]
|
||||
end
|
||||
selection
|
||||
end
|
||||
|
||||
def self.letters(length)
|
||||
random_selection(
|
||||
'abcdefghijklmnopqrstuvwxyz',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.numbers(length)
|
||||
random_selection(
|
||||
'0123456789',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.hex(length)
|
||||
random_selection(
|
||||
'0123456789abcdef',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.base64(length)
|
||||
random_selection(
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
|
||||
length
|
||||
)
|
||||
end
|
||||
class Mock
|
||||
|
||||
def self.availability_zone
|
||||
"us-east-1" << random_selection('abcd', 1)
|
||||
end
|
||||
end
|
||||
|
||||
def self.box_usage
|
||||
sprintf("%0.10f", rand / 100).to_f
|
||||
end
|
||||
|
||||
def self.console_output
|
||||
'This is my console. There are many like it, but this one is mine. My console is my best friend. It is my life. I must master it as I master my life. My console, without me, is useless. Without my console, I am useless.'
|
||||
end
|
||||
|
||||
def self.etag
|
||||
hex(32)
|
||||
end
|
||||
|
||||
def self.image
|
||||
path = []
|
||||
(rand(3) + 2).times do
|
||||
path << letters(rand(9) + 8)
|
||||
end
|
||||
{
|
||||
"imageOwnerId" => letters(rand(5) + 4),
|
||||
"productCodes" => [],
|
||||
"kernelId" => kernel_id,
|
||||
"ramdiskId" => ramdisk_id,
|
||||
"imageState" => "available",
|
||||
"imageId" => image_id,
|
||||
"architecture" => "i386",
|
||||
"isPublic" => true,
|
||||
"imageLocation" => path.join('/'),
|
||||
"imageType" => "machine"
|
||||
}
|
||||
end
|
||||
|
||||
def self.image_id
|
||||
"ami-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.key_fingerprint
|
||||
fingerprint = []
|
||||
20.times do
|
||||
fingerprint << hex(2)
|
||||
end
|
||||
fingerprint.join(':')
|
||||
end
|
||||
|
||||
def self.image_id
|
||||
"ami-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.instance_id
|
||||
"i-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.ip_address
|
||||
ip = []
|
||||
4.times do
|
||||
ip << numbers(rand(3) + 1).to_i.to_s # remove leading 0
|
||||
end
|
||||
ip.join('.')
|
||||
end
|
||||
|
||||
def self.kernel_id
|
||||
"aki-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.key_material
|
||||
key_material = ['-----BEGIN RSA PRIVATE KEY-----']
|
||||
20.times do
|
||||
key_material << base64(76)
|
||||
end
|
||||
key_material << base64(67) + '='
|
||||
key_material << '-----END RSA PRIVATE KEY-----'
|
||||
key_material.join("\n")
|
||||
end
|
||||
|
||||
def self.owner_id
|
||||
numbers(12)
|
||||
end
|
||||
|
||||
def self.ramdisk_id
|
||||
"ari-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.request_id
|
||||
request_id = []
|
||||
request_id << hex(8)
|
||||
3.times do
|
||||
request_id << hex(4)
|
||||
end
|
||||
request_id << hex(12)
|
||||
request_id.join('-')
|
||||
end
|
||||
|
||||
def self.reservation_id
|
||||
"r-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.snapshot_id
|
||||
"snap-#{hex(8)}"
|
||||
end
|
||||
|
||||
def self.volume_id
|
||||
"vol-#{hex(8)}"
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def self.random_selection(characters, length)
|
||||
selection = ''
|
||||
length.times do
|
||||
position = rand(characters.length)
|
||||
selection << characters[position..position]
|
||||
end
|
||||
selection
|
||||
end
|
||||
|
||||
def self.letters(length)
|
||||
random_selection(
|
||||
'abcdefghijklmnopqrstuvwxyz',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.numbers(length)
|
||||
random_selection(
|
||||
'0123456789',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.hex(length)
|
||||
random_selection(
|
||||
'0123456789abcdef',
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
def self.base64(length)
|
||||
random_selection(
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
|
||||
length
|
||||
)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Fog::AWS.reload
|
||||
|
|
Loading…
Reference in a new issue