1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/tests/brightbox/requests/compute/helper.rb

471 lines
17 KiB
Ruby

module Fog
module Brightbox
module Nullable
module Account; end
module Image; end
module Interface; end
module LoadBalancer; end
module Server; end
module Zone; end
end
end
end
Hash.send :include, Fog::Brightbox::Nullable::Account
NilClass.send :include, Fog::Brightbox::Nullable::Account
Hash.send :include, Fog::Brightbox::Nullable::Image
NilClass.send :include, Fog::Brightbox::Nullable::Image
Hash.send :include, Fog::Brightbox::Nullable::Interface
NilClass.send :include, Fog::Brightbox::Nullable::Interface
Hash.send :include, Fog::Brightbox::Nullable::LoadBalancer
NilClass.send :include, Fog::Brightbox::Nullable::LoadBalancer
Hash.send :include, Fog::Brightbox::Nullable::Server
NilClass.send :include, Fog::Brightbox::Nullable::Server
Hash.send :include, Fog::Brightbox::Nullable::Zone
NilClass.send :include, Fog::Brightbox::Nullable::Zone
class Brightbox
module Compute
module TestSupport
IMAGE_IDENTIFER = "img-2ab98" # Ubuntu Lucid 10.04 server (i686)
end
module Formats
module Struct
LB_LISTENER = {
"in" => Integer,
"out" => Integer,
"protocol" => String
}
LB_HEALTHCHECK = {
"type" => String,
"request" => String,
"port" => Integer,
"interval" => Integer,
"timeout" => Integer,
"threshold_up" => Integer,
"threshold_down" => Integer
}
end
module Nested
ACCOUNT = {
"name" => String,
"resource_type" => String,
"url" => String,
"id" => String,
"status" => String,
"ram_limit" => Integer,
"ram_used" => Integer,
"cloud_ips_limit" => Integer,
"cloud_ips_used" => Integer,
"load_balancers_limit" => Integer,
"load_balancers_used" => Integer
}
API_CLIENT = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"description" => String,
"revoked_at" => Fog::Nullable::String
}
CLOUD_IP = {
"id" => String,
"resource_type" => String,
"url" => String,
"public_ip" => String,
"status" => String,
"reverse_dns" => String
}
IMAGE = {
"name" => String,
"created_at" => String,
"resource_type" => String,
"arch" => String,
"url" => String,
"id" => String,
"description" => String,
"source" => String,
"status" => String,
"owner" => String
}
INTERFACE = {
"resource_type" => String,
"url" => String,
"id" => String,
"ipv4_address" => String,
"ipv6_address" => Fog::Nullable::String,
"mac_address" => String
}
SERVER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"hostname" => String,
"created_at" => String,
"started_at" => Fog::Nullable::String,
"deleted_at" => Fog::Nullable::String
}
SERVER_GROUP = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"default" => Fog::Boolean,
"description" => Fog::Nullable::String
}
SERVER_TYPE = {
"name" => String,
"handle" => Fog::Nullable::String,
"cores" => Integer,
"resource_type" => String,
"disk_size" => Integer,
"url" => String,
"id" => String,
"ram" => Integer,
"status" => String
}
USER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"email_address" => String
}
ZONE = {
"id" => String,
"resource_type" => String,
"url" => String,
"handle" => Fog::Nullable::String
}
end
module Collected
API_CLIENT = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"description" => String,
"revoked_at" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT
}
CLOUD_IP = {
"id" => String,
"resource_type" => String,
"url" => String,
"public_ip" => String,
"status" => String,
"reverse_dns" => String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"interface" => Fog::Brightbox::Nullable::Interface,
"load_balancer" => Fog::Brightbox::Nullable::LoadBalancer,
"server" => Fog::Brightbox::Nullable::Server
}
IMAGE = {
"name" => String,
"created_at" => String,
"resource_type" => String,
"arch" => String,
"url" => String,
"id" => String,
"description" => String,
"source" => String,
"source_type" => String,
"status" => String,
"owner" => String,
"public" => Fog::Boolean,
"official" => Fog::Boolean,
"compatibility_mode" => Fog::Boolean,
"virtual_size" => Integer,
"disk_size" => Integer,
"ancestor" => Fog::Brightbox::Nullable::Image
}
LOAD_BALANCER = {
"cloud_ips" => Array,
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"created_at" => String,
"deleted_at" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"nodes" => [Brightbox::Compute::Formats::Nested::SERVER],
"cloud_ips" => [Brightbox::Compute::Formats::Nested::CLOUD_IP]
}
SERVER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"hostname" => String,
"created_at" => String,
"started_at" => Fog::Nullable::String,
"deleted_at" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"server_type" => Brightbox::Compute::Formats::Nested::SERVER_TYPE,
"cloud_ips" => [Brightbox::Compute::Formats::Nested::CLOUD_IP],
"image" => Brightbox::Compute::Formats::Nested::IMAGE,
"server_groups" => [Brightbox::Compute::Formats::Nested::SERVER_GROUP],
"snapshots" => [Brightbox::Compute::Formats::Nested::IMAGE],
"interfaces" => [Brightbox::Compute::Formats::Nested::INTERFACE],
"zone" => Fog::Brightbox::Nullable::Zone
}
SERVER_GROUP = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"description" => Fog::Nullable::String,
"default" => Fog::Boolean,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"servers" => [Brightbox::Compute::Formats::Nested::SERVER]
}
SERVER_TYPE = {
"id" => String,
"resource_type" => String,
"url" => String,
"handle" => Fog::Nullable::String,
"name" => String,
"status" => String,
"cores" => Integer,
"ram" => Integer,
"disk_size" => Integer
}
USER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"email_address" => String,
"email_verified" => Fog::Boolean,
"accounts" => [Brightbox::Compute::Formats::Nested::ACCOUNT],
"default_account" => NilClass
}
ZONE = {
"id" => String,
"resource_type" => String,
"url" => String,
"handle" => Fog::Nullable::String
}
end
module Full
ACCOUNT = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"address_1" => String,
"address_2" => String,
"city" => String,
"county" => String,
"postcode" => String,
"country_code" => String,
"country_name" => String,
"vat_registration_number" => Fog::Nullable::String,
"telephone_number" => String,
"telephone_verified" => Fog::Boolean,
"created_at" => String,
"ram_limit" => Integer,
"ram_used" => Integer,
"cloud_ips_limit" => Integer,
"cloud_ips_used" => Integer,
"load_balancers_limit" => Integer,
"load_balancers_used" => Integer,
"library_ftp_host" => String,
"library_ftp_user" => String,
"library_ftp_password" => Fog::Nullable::String,
"verified_telephone" => Fog::Nullable::String,
"verified_at" => Fog::Nullable::String,
"verified_ip" => Fog::Nullable::String,
"valid_credit_card" => Fog::Boolean,
"owner" => Brightbox::Compute::Formats::Nested::USER,
"users" => [Brightbox::Compute::Formats::Nested::USER],
"clients" => [Brightbox::Compute::Formats::Nested::API_CLIENT],
"servers" => [Brightbox::Compute::Formats::Nested::SERVER],
"images" => [Brightbox::Compute::Formats::Nested::IMAGE],
"zones" => [Brightbox::Compute::Formats::Nested::ZONE]
}
API_CLIENT = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"description" => String,
"revoked_at" => Fog::Nullable::String,
"secret" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT
}
CLOUD_IP = {
"id" => String,
"resource_type" => String,
"url" => String,
"public_ip" => String,
"status" => String,
"reverse_dns" => String,
"account" => Fog::Brightbox::Nullable::Account,
"interface" => Fog::Brightbox::Nullable::Interface,
"load_balancer" => Fog::Brightbox::Nullable::LoadBalancer,
"server" => Fog::Brightbox::Nullable::Server
}
IMAGE = {
"name" => String,
"created_at" => String,
"resource_type" => String,
"arch" => String,
"url" => String,
"id" => String,
"description" => String,
"source" => String,
"source_type" => String,
"status" => String,
"owner" => String, # Account ID not object
"public" => Fog::Boolean,
"official" => Fog::Boolean,
"compatibility_mode" => Fog::Boolean,
"virtual_size" => Integer,
"disk_size" => Integer,
"ancestor" => Fog::Brightbox::Nullable::Image
}
INTERFACE = {
"resource_type" => String,
"url" => String,
"id" => String,
"ipv4_address" => String,
"ipv6_address" => Fog::Nullable::String,
"mac_address" => String,
"server" => Brightbox::Compute::Formats::Nested::SERVER
}
LOAD_BALANCER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"listeners" => [Brightbox::Compute::Formats::Struct::LB_LISTENER],
"policy" => String,
"healthcheck" => Brightbox::Compute::Formats::Struct::LB_HEALTHCHECK,
"created_at" => String,
"deleted_at" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"nodes" => [Brightbox::Compute::Formats::Nested::SERVER],
"cloud_ips" => [Brightbox::Compute::Formats::Nested::CLOUD_IP]
}
SERVER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"status" => String,
"hostname" => String,
"created_at" => String,
"started_at" => Fog::Nullable::String,
"deleted_at" => Fog::Nullable::String,
"user_data" => Fog::Nullable::String,
"console_url" => Fog::Nullable::String,
"console_token" => Fog::Nullable::String,
"console_token_expires" => Fog::Nullable::String,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"server_type" => Brightbox::Compute::Formats::Nested::SERVER_TYPE,
"cloud_ips" => [Brightbox::Compute::Formats::Nested::CLOUD_IP],
"image" => Brightbox::Compute::Formats::Nested::IMAGE,
"snapshots" => [Brightbox::Compute::Formats::Nested::IMAGE],
"server_groups" => [Brightbox::Compute::Formats::Nested::SERVER_GROUP],
"interfaces" => [Brightbox::Compute::Formats::Nested::INTERFACE],
"zone" => Brightbox::Compute::Formats::Nested::ZONE
}
SERVER_GROUP = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"description" => Fog::Nullable::String,
"default" => Fog::Boolean,
"account" => Brightbox::Compute::Formats::Nested::ACCOUNT,
"servers" => [Brightbox::Compute::Formats::Nested::SERVER]
}
SERVER_TYPE = {
"id" => String,
"resource_type" => String,
"url" => String,
"handle" => Fog::Nullable::String,
"name" => String,
"status" => String,
"cores" => Integer,
"ram" => Integer,
"disk_size" => Integer
}
USER = {
"id" => String,
"resource_type" => String,
"url" => String,
"name" => String,
"email_address" => String,
"email_verified" => Fog::Boolean,
"accounts" => [Brightbox::Compute::Formats::Nested::ACCOUNT],
"default_account" => Fog::Brightbox::Nullable::Account,
"ssh_key" => Fog::Nullable::String,
"messaging_pref" => Fog::Boolean
}
ZONE = {
"id" => String,
"resource_type" => String,
"url" => String,
"handle" => String
}
end
module Collection
API_CLIENTS = [Brightbox::Compute::Formats::Collected::API_CLIENT]
CLOUD_IPS = [Brightbox::Compute::Formats::Collected::CLOUD_IP]
IMAGES = [Brightbox::Compute::Formats::Collected::IMAGE]
LOAD_BALANCERS = [Brightbox::Compute::Formats::Collected::LOAD_BALANCER]
SERVERS = [Brightbox::Compute::Formats::Collected::SERVER]
SERVER_GROUPS = [Brightbox::Compute::Formats::Collected::SERVER_GROUP]
SERVER_TYPES = [Brightbox::Compute::Formats::Collected::SERVER_TYPE]
USERS = [Brightbox::Compute::Formats::Collected::USER]
ZONES = [Brightbox::Compute::Formats::Collected::ZONE]
end
end
end
end