Class: Fog::AWS::Mock
- Inherits:
-
Object
- Object
- Fog::AWS::Mock
- Defined in:
- lib/fog/aws.rb
Class Method Summary collapse
- .arn(vendor, account_id, path, region = nil) ⇒ Object
- .availability_zone(region) ⇒ Object
- .box_usage ⇒ Object
- .console_output ⇒ Object
- .dns_name_for(ip_address) ⇒ Object
- .etag ⇒ Object
- .image ⇒ Object
- .image_id ⇒ Object
- .instance_id ⇒ Object
- .ip_address ⇒ Object
- .kernel_id ⇒ Object
- .key_fingerprint ⇒ Object
- .key_material ⇒ Object
- .owner_id ⇒ Object
- .private_dns_name_for(ip_address) ⇒ Object
- .ramdisk_id ⇒ Object
- .request_id ⇒ Object (also: reserved_instances_id, reserved_instances_offering_id, sqs_message_id, sqs_sender_id)
- .reservation_id ⇒ Object
- .snapshot_id ⇒ Object
- .volume_id ⇒ Object
Class Method Details
.arn(vendor, account_id, path, region = nil) ⇒ Object
103 104 105 |
# File 'lib/fog/aws.rb', line 103 def self.arn(vendor, account_id, path, region = nil) "arn:aws:#{vendor}:#{region}:#{account_id}:#{path}" end |
.availability_zone(region) ⇒ Object
107 108 109 |
# File 'lib/fog/aws.rb', line 107 def self.availability_zone(region) "#{region}#{Fog::Mock.random_selection('abcd', 1)}" end |
.box_usage ⇒ Object
111 112 113 |
# File 'lib/fog/aws.rb', line 111 def self.box_usage sprintf("%0.10f", rand / 100).to_f end |
.console_output ⇒ Object
115 116 117 118 |
# File 'lib/fog/aws.rb', line 115 def self.console_output # "[ 0.000000] Linux version 2.6.18-xenU-ec2-v1.2 (root@domU-12-31-39-07-51-82) (gcc version 4.1.2 20070626 (Red Hat 4.1.2-13)) #2 SMP Wed Aug 19 09:04:38 EDT 2009" Base64.decode64("WyAwLjAwMDAwMF0gTGludXggdmVyc2lvbiAyLjYuMTgteGVuVS1lYzItdjEu\nMiAocm9vdEBkb21VLTEyLTMxLTM5LTA3LTUxLTgyKSAoZ2NjIHZlcnNpb24g\nNC4xLjIgMjAwNzA2MjYgKFJlZCBIYXQgNC4xLjItMTMpKSAjMiBTTVAgV2Vk\nIEF1ZyAxOSAwOTowNDozOCBFRFQgMjAwOQ==\n") end |
.dns_name_for(ip_address) ⇒ Object
120 121 122 |
# File 'lib/fog/aws.rb', line 120 def self.dns_name_for(ip_address) "ec2-#{ip_address.gsub('.','-')}.compute-1.amazonaws.com" end |
.etag ⇒ Object
128 129 130 |
# File 'lib/fog/aws.rb', line 128 def self.etag Fog::Mock.random_hex(32) end |
.image ⇒ Object
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
# File 'lib/fog/aws.rb', line 132 def self.image path = [] (rand(3) + 2).times do path << Fog::Mock.random_letters(rand(9) + 8) end { "imageOwnerId" => Fog::Mock.random_letters(rand(5) + 4), "blockDeviceMapping" => [], "productCodes" => [], "kernelId" => kernel_id, "ramdiskId" => ramdisk_id, "imageState" => "available", "imageId" => image_id, "architecture" => "i386", "isPublic" => true, "imageLocation" => path.join('/'), "imageType" => "machine", "rootDeviceType" => ["ebs","instance-store"][rand(2)], "rootDeviceName" => "/dev/sda1" } end |
.image_id ⇒ Object
154 155 156 |
# File 'lib/fog/aws.rb', line 154 def self.image_id "ami-#{Fog::Mock.random_hex(8)}" end |
.instance_id ⇒ Object
166 167 168 |
# File 'lib/fog/aws.rb', line 166 def self.instance_id "i-#{Fog::Mock.random_hex(8)}" end |
.ip_address ⇒ Object
170 171 172 173 174 175 176 |
# File 'lib/fog/aws.rb', line 170 def self.ip_address ip = [] 4.times do ip << Fog::Mock.random_numbers(rand(3) + 1).to_i.to_s # remove leading 0 end ip.join('.') end |
.kernel_id ⇒ Object
178 179 180 |
# File 'lib/fog/aws.rb', line 178 def self.kernel_id "aki-#{Fog::Mock.random_hex(8)}" end |
.key_fingerprint ⇒ Object
158 159 160 161 162 163 164 |
# File 'lib/fog/aws.rb', line 158 def self.key_fingerprint fingerprint = [] 20.times do fingerprint << Fog::Mock.random_hex(2) end fingerprint.join(':') end |
.key_material ⇒ Object
182 183 184 |
# File 'lib/fog/aws.rb', line 182 def self.key_material OpenSSL::PKey::RSA.generate(1024).to_s end |
.owner_id ⇒ Object
186 187 188 |
# File 'lib/fog/aws.rb', line 186 def self.owner_id Fog::Mock.random_numbers(12) end |
.private_dns_name_for(ip_address) ⇒ Object
124 125 126 |
# File 'lib/fog/aws.rb', line 124 def self.private_dns_name_for(ip_address) "ip-#{ip_address.gsub('.','-')}.ec2.internal" end |
.ramdisk_id ⇒ Object
190 191 192 |
# File 'lib/fog/aws.rb', line 190 def self.ramdisk_id "ari-#{Fog::Mock.random_hex(8)}" end |
.request_id ⇒ Object Also known as: reserved_instances_id, reserved_instances_offering_id, sqs_message_id, sqs_sender_id
194 195 196 197 198 199 200 201 202 |
# File 'lib/fog/aws.rb', line 194 def self.request_id request_id = [] request_id << Fog::Mock.random_hex(8) 3.times do request_id << Fog::Mock.random_hex(4) end request_id << Fog::Mock.random_hex(12) request_id.join('-') end |
.reservation_id ⇒ Object
210 211 212 |
# File 'lib/fog/aws.rb', line 210 def self.reservation_id "r-#{Fog::Mock.random_hex(8)}" end |
.snapshot_id ⇒ Object
214 215 216 |
# File 'lib/fog/aws.rb', line 214 def self.snapshot_id "snap-#{Fog::Mock.random_hex(8)}" end |
.volume_id ⇒ Object
218 219 220 |
# File 'lib/fog/aws.rb', line 218 def self.volume_id "vol-#{Fog::Mock.random_hex(8)}" end |