Class: Fog::AWS::Mock

Inherits:
Object
  • Object
show all
Defined in:
lib/fog/aws/core.rb

Class Method Summary (collapse)

Class Method Details

+ (Object) arn(vendor, account_id, path, region = nil)



124
125
126
# File 'lib/fog/aws/core.rb', line 124

def self.arn(vendor, , path, region = nil)
  "arn:aws:#{vendor}:#{region}:#{}:#{path}"
end

+ (Object) availability_zone(region)



128
129
130
# File 'lib/fog/aws/core.rb', line 128

def self.availability_zone(region)
  "#{region}#{Fog::Mock.random_selection('abcd', 1)}"
end

+ (Object) box_usage



132
133
134
# File 'lib/fog/aws/core.rb', line 132

def self.box_usage
  sprintf("%0.10f", rand / 100).to_f
end

+ (Object) change_id



267
268
269
# File 'lib/fog/aws/core.rb', line 267

def self.change_id
  Fog::Mock.random_letters_and_numbers(14)
end

+ (Object) console_output



136
137
138
139
# File 'lib/fog/aws/core.rb', line 136

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

+ (Object) dhcp_options_id



255
256
257
# File 'lib/fog/aws/core.rb', line 255

def self.dhcp_options_id
  "dopt-#{Fog::Mock.random_hex(8)}"
end

+ (Object) dns_name_for(ip_address)



141
142
143
# File 'lib/fog/aws/core.rb', line 141

def self.dns_name_for(ip_address)
  "ec2-#{ip_address.gsub('.','-')}.compute-1.amazonaws.com"
end

+ (Object) image



149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# File 'lib/fog/aws/core.rb', line 149

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

+ (Object) image_id



171
172
173
# File 'lib/fog/aws/core.rb', line 171

def self.image_id
  "ami-#{Fog::Mock.random_hex(8)}"
end

+ (Object) instance_id



183
184
185
# File 'lib/fog/aws/core.rb', line 183

def self.instance_id
  "i-#{Fog::Mock.random_hex(8)}"
end

+ (Object) internet_gateway_id



252
253
254
# File 'lib/fog/aws/core.rb', line 252

def self.internet_gateway_id
  "igw-#{Fog::Mock.random_hex(8)}"
end

+ (Object) ip_address



187
188
189
# File 'lib/fog/aws/core.rb', line 187

def self.ip_address
  Fog::Mock.random_ip
end

+ (Object) kernel_id



195
196
197
# File 'lib/fog/aws/core.rb', line 195

def self.kernel_id
  "aki-#{Fog::Mock.random_hex(8)}"
end

+ (Object) key_fingerprint



175
176
177
178
179
180
181
# File 'lib/fog/aws/core.rb', line 175

def self.key_fingerprint
  fingerprint = []
  20.times do
    fingerprint << Fog::Mock.random_hex(2)
  end
  fingerprint.join(':')
end

+ (Object) key_id(length = 21)



279
280
281
282
# File 'lib/fog/aws/core.rb', line 279

def self.key_id(length=21)
  #Probably close enough
  Fog::Mock.random_selection('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789',length)
end

+ (Object) key_material



199
200
201
# File 'lib/fog/aws/core.rb', line 199

def self.key_material
  OpenSSL::PKey::RSA.generate(1024).to_s
end

+ (Object) nameservers



270
271
272
273
274
275
276
277
# File 'lib/fog/aws/core.rb', line 270

def self.nameservers
  [
    'ns-2048.awsdns-64.com',
    'ns-2049.awsdns-65.net',
    'ns-2050.awsdns-66.org',
    'ns-2051.awsdns-67.co.uk'
  ]
end

+ (Object) network_acl_association_id



246
247
248
# File 'lib/fog/aws/core.rb', line 246

def self.network_acl_association_id
  "aclassoc-#{Fog::Mock.random_hex(8)}"
end

+ (Object) network_acl_id



243
244
245
# File 'lib/fog/aws/core.rb', line 243

def self.network_acl_id
  "acl-#{Fog::Mock.random_hex(8)}"
end

+ (Object) network_interface_id



249
250
251
# File 'lib/fog/aws/core.rb', line 249

def self.network_interface_id
  "eni-#{Fog::Mock.random_hex(8)}"
end

+ (Object) owner_id



203
204
205
# File 'lib/fog/aws/core.rb', line 203

def self.owner_id
  Fog::Mock.random_numbers(12)
end

+ (Object) private_dns_name_for(ip_address)



145
146
147
# File 'lib/fog/aws/core.rb', line 145

def self.private_dns_name_for(ip_address)
  "ip-#{ip_address.gsub('.','-')}.ec2.internal"
end

+ (Object) private_ip_address



191
192
193
# File 'lib/fog/aws/core.rb', line 191

def self.private_ip_address
  ip_address.gsub(/^\d{1,3}\./,"10.")
end

+ (Object) ramdisk_id



207
208
209
# File 'lib/fog/aws/core.rb', line 207

def self.ramdisk_id
  "ari-#{Fog::Mock.random_hex(8)}"
end

+ (Object) rds_address(db_name, region)



284
285
286
# File 'lib/fog/aws/core.rb', line 284

def self.rds_address(db_name,region)
  "#{db_name}.#{Fog::Mock.random_letters(rand(12) + 4)}.#{region}.rds.amazonaws.com"
end

+ (Object) request_id Also known as: reserved_instances_id, reserved_instances_offering_id, sqs_message_id, sqs_sender_id



211
212
213
214
215
216
217
218
219
# File 'lib/fog/aws/core.rb', line 211

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

+ (Object) reservation_id



227
228
229
# File 'lib/fog/aws/core.rb', line 227

def self.reservation_id
  "r-#{Fog::Mock.random_hex(8)}"
end

+ (Object) security_group_id



239
240
241
# File 'lib/fog/aws/core.rb', line 239

def self.security_group_id
  "sg-#{Fog::Mock.random_hex(8)}"
end

+ (Object) snapshot_id



231
232
233
# File 'lib/fog/aws/core.rb', line 231

def self.snapshot_id
  "snap-#{Fog::Mock.random_hex(8)}"
end

+ (Object) subnet_id



261
262
263
# File 'lib/fog/aws/core.rb', line 261

def self.subnet_id
  "subnet-#{Fog::Mock.random_hex(8)}"
end

+ (Object) volume_id



235
236
237
# File 'lib/fog/aws/core.rb', line 235

def self.volume_id
  "vol-#{Fog::Mock.random_hex(8)}"
end

+ (Object) vpc_id



258
259
260
# File 'lib/fog/aws/core.rb', line 258

def self.vpc_id
  "vpc-#{Fog::Mock.random_hex(8)}"
end

+ (Object) zone_id



264
265
266
# File 'lib/fog/aws/core.rb', line 264

def self.zone_id
  "zone-#{Fog::Mock.random_hex(8)}"
end