bbcloud 0.11.2 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -2
- data/Gemfile +3 -0
- data/README +11 -1
- data/README.rdoc +11 -1
- data/Rakefile +12 -0
- data/bbcloud.gemspec +10 -10
- data/bin/brightbox-accounts +7 -2
- data/bin/brightbox-cloudips +7 -2
- data/bin/brightbox-config +7 -2
- data/bin/brightbox-images +7 -2
- data/bin/brightbox-lbs +7 -2
- data/bin/brightbox-servers +7 -2
- data/bin/brightbox-types +7 -2
- data/bin/brightbox-users +7 -2
- data/bin/brightbox-zones +7 -2
- data/lib/bbcloud.rb +43 -0
- data/lib/bbcloud/accounts.rb +5 -3
- data/lib/bbcloud/command_generator.rb +50 -0
- data/lib/bbcloud/commands/accounts-list.rb +13 -11
- data/lib/bbcloud/commands/accounts-reset-ftp-password.rb +26 -23
- data/lib/bbcloud/commands/accounts-show.rb +20 -16
- data/lib/bbcloud/commands/cloudips-create.rb +16 -14
- data/lib/bbcloud/commands/cloudips-destroy.rb +29 -26
- data/lib/bbcloud/commands/cloudips-list.rb +13 -11
- data/lib/bbcloud/commands/cloudips-map.rb +48 -46
- data/lib/bbcloud/commands/cloudips-show.rb +15 -12
- data/lib/bbcloud/commands/cloudips-unmap.rb +28 -25
- data/lib/bbcloud/commands/config-client-add.rb +33 -31
- data/lib/bbcloud/commands/config-client-default.rb +18 -16
- data/lib/bbcloud/commands/config-client-list.rb +19 -16
- data/lib/bbcloud/commands/config-client-remove.rb +18 -16
- data/lib/bbcloud/commands/images-destroy.rb +18 -16
- data/lib/bbcloud/commands/images-list.rb +20 -18
- data/lib/bbcloud/commands/images-register.rb +21 -19
- data/lib/bbcloud/commands/images-show.rb +17 -15
- data/lib/bbcloud/commands/lbs-add-nodes.rb +15 -13
- data/lib/bbcloud/commands/lbs-create.rb +65 -63
- data/lib/bbcloud/commands/lbs-destroy.rb +13 -11
- data/lib/bbcloud/commands/lbs-list.rb +13 -11
- data/lib/bbcloud/commands/lbs-remove-nodes.rb +15 -13
- data/lib/bbcloud/commands/lbs-show.rb +15 -13
- data/lib/bbcloud/commands/lbs-update.rb +59 -57
- data/lib/bbcloud/commands/servers-activate-cloud.rb +18 -16
- data/lib/bbcloud/commands/servers-create.rb +80 -77
- data/lib/bbcloud/commands/servers-destroy.rb +17 -15
- data/lib/bbcloud/commands/servers-list.rb +14 -14
- data/lib/bbcloud/commands/servers-show.rb +39 -37
- data/lib/bbcloud/commands/servers-shutdown.rb +14 -12
- data/lib/bbcloud/commands/servers-snapshot.rb +14 -12
- data/lib/bbcloud/commands/servers-start.rb +15 -13
- data/lib/bbcloud/commands/servers-stop.rb +14 -12
- data/lib/bbcloud/commands/types-list.rb +13 -11
- data/lib/bbcloud/commands/types-show.rb +18 -16
- data/lib/bbcloud/commands/users-list.rb +13 -11
- data/lib/bbcloud/commands/users-show.rb +17 -15
- data/lib/bbcloud/commands/users-update.rb +27 -25
- data/lib/bbcloud/commands/zones-list.rb +13 -11
- data/lib/bbcloud/config.rb +125 -111
- data/lib/bbcloud/error_parser.rb +34 -0
- data/lib/bbcloud/fog_extensions.rb +19 -0
- data/lib/bbcloud/gli_global_hooks.rb +56 -0
- data/lib/bbcloud/logging.rb +40 -0
- data/lib/bbcloud/ruby_core_ext.rb +9 -0
- data/lib/bbcloud/servers.rb +7 -2
- data/lib/bbcloud/tables.rb +78 -73
- data/lib/bbcloud/vendor/gli/.gitignore +10 -0
- data/lib/bbcloud/vendor/gli/.rvmrc +1 -0
- data/lib/bbcloud/vendor/gli/Gemfile +5 -0
- data/lib/bbcloud/vendor/gli/LICENSE.txt +201 -0
- data/lib/bbcloud/vendor/gli/README.rdoc +54 -0
- data/lib/bbcloud/vendor/gli/Rakefile +84 -0
- data/lib/bbcloud/vendor/gli/bin/gli +72 -0
- data/lib/bbcloud/vendor/gli/bin/report_on_rake_results +10 -0
- data/lib/bbcloud/vendor/gli/bin/test_all_rubies.sh +2 -0
- data/lib/bbcloud/vendor/gli/features/gli_executable.feature +88 -0
- data/lib/bbcloud/vendor/gli/features/gli_init.feature +122 -0
- data/lib/bbcloud/vendor/gli/features/step_definitions/gli_executable_steps.rb +12 -0
- data/lib/bbcloud/vendor/gli/features/step_definitions/gli_init_steps.rb +4 -0
- data/lib/bbcloud/vendor/gli/features/support/env.rb +21 -0
- data/lib/bbcloud/vendor/gli/gli.cheat +80 -0
- data/lib/bbcloud/vendor/gli/gli.gemspec +46 -0
- data/lib/bbcloud/vendor/gli/gli.rdoc +51 -0
- data/lib/bbcloud/vendor/gli/lib/gli.rb +560 -0
- data/lib/bbcloud/vendor/gli/lib/gli/command.rb +124 -0
- data/lib/bbcloud/vendor/gli/lib/gli/command_line_token.rb +58 -0
- data/lib/bbcloud/vendor/gli/lib/gli/copy_options_to_aliases.rb +33 -0
- data/lib/bbcloud/vendor/gli/lib/gli/exceptions.rb +45 -0
- data/lib/bbcloud/vendor/gli/lib/gli/flag.rb +67 -0
- data/lib/bbcloud/vendor/gli/lib/gli/options.rb +19 -0
- data/lib/bbcloud/vendor/gli/lib/gli/switch.rb +63 -0
- data/lib/bbcloud/vendor/gli/lib/gli/terminal.rb +79 -0
- data/lib/bbcloud/vendor/gli/lib/gli_version.rb +3 -0
- data/lib/bbcloud/vendor/gli/lib/support/help.rb +180 -0
- data/lib/bbcloud/vendor/gli/lib/support/initconfig.rb +34 -0
- data/lib/bbcloud/vendor/gli/lib/support/rdoc.rb +119 -0
- data/lib/bbcloud/vendor/gli/lib/support/scaffold.rb +284 -0
- data/lib/bbcloud/vendor/gli/test/config.yaml +9 -0
- data/lib/bbcloud/vendor/gli/test/gli.reek +116 -0
- data/lib/bbcloud/vendor/gli/test/roodi.yaml +9 -0
- data/lib/bbcloud/vendor/gli/test/tc_command.rb +329 -0
- data/lib/bbcloud/vendor/gli/test/tc_flag.rb +67 -0
- data/lib/bbcloud/vendor/gli/test/tc_gli.rb +429 -0
- data/lib/bbcloud/vendor/gli/test/tc_options.rb +31 -0
- data/lib/bbcloud/vendor/gli/test/tc_parsing.rb +279 -0
- data/lib/bbcloud/vendor/gli/test/tc_switch.rb +80 -0
- data/lib/bbcloud/vendor/gli/test/tc_terminal.rb +91 -0
- data/lib/bbcloud/version.rb +1 -1
- data/pkg/bbcloud-0.12.0.gem +0 -0
- data/spec/fixtures/vcr_cassettes/server_list.yml +117 -0
- data/spec/servers_spec.rb +36 -0
- data/spec/spec_helper.rb +24 -0
- data/spec/support/common_helpers.rb +47 -0
- metadata +129 -135
- data/lib/bbcloud/cli.rb +0 -160
- data/lib/bbcloud/vendor/fog/lib/fog.rb +0 -14
- data/lib/bbcloud/vendor/fog/lib/fog/compute.rb +0 -43
- data/lib/bbcloud/vendor/fog/lib/fog/compute/brightbox.rb +0 -162
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/account.rb +0 -51
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/cloud_ip.rb +0 -47
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/cloud_ips.rb +0 -34
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/flavor.rb +0 -33
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/flavors.rb +0 -28
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/image.rb +0 -56
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/images.rb +0 -28
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/load_balancer.rb +0 -50
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/load_balancers.rb +0 -28
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/server.rb +0 -108
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/servers.rb +0 -29
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/user.rb +0 -39
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/users.rb +0 -29
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/zone.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/compute/models/brightbox/zones.rb +0 -29
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/activate_console_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/add_listeners_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/add_nodes_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/create_api_client.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/create_cloud_ip.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/create_image.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/create_load_balancer.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/create_server.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/destroy_api_client.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/destroy_cloud_ip.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/destroy_image.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/destroy_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/destroy_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_account.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_api_client.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_cloud_ip.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_image.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_interface.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_server_type.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_user.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/get_zone.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_api_clients.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_cloud_ips.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_images.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_load_balancers.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_server_types.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_servers.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_users.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/list_zones.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/map_cloud_ip.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/remove_listeners_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/remove_nodes_load_balancer.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/reset_ftp_password_account.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/resize_server.rb +0 -19
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/shutdown_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/snapshot_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/start_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/stop_server.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/unmap_cloud_ip.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_account.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_api_client.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_image.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_load_balancer.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_server.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/compute/requests/brightbox/update_user.rb +0 -21
- data/lib/bbcloud/vendor/fog/lib/fog/core.rb +0 -32
- data/lib/bbcloud/vendor/fog/lib/fog/core/attributes.rb +0 -178
- data/lib/bbcloud/vendor/fog/lib/fog/core/collection.rb +0 -127
- data/lib/bbcloud/vendor/fog/lib/fog/core/connection.rb +0 -35
- data/lib/bbcloud/vendor/fog/lib/fog/core/credentials.rb +0 -92
- data/lib/bbcloud/vendor/fog/lib/fog/core/deprecation.rb +0 -23
- data/lib/bbcloud/vendor/fog/lib/fog/core/errors.rb +0 -20
- data/lib/bbcloud/vendor/fog/lib/fog/core/hmac.rb +0 -48
- data/lib/bbcloud/vendor/fog/lib/fog/core/mock.rb +0 -68
- data/lib/bbcloud/vendor/fog/lib/fog/core/model.rb +0 -57
- data/lib/bbcloud/vendor/fog/lib/fog/core/parser.rb +0 -99
- data/lib/bbcloud/vendor/fog/lib/fog/core/provider.rb +0 -18
- data/lib/bbcloud/vendor/fog/lib/fog/core/scp.rb +0 -67
- data/lib/bbcloud/vendor/fog/lib/fog/core/service.rb +0 -175
- data/lib/bbcloud/vendor/fog/lib/fog/core/ssh.rb +0 -120
- data/lib/bbcloud/vendor/fog/lib/fog/core/time.rb +0 -27
- data/lib/bbcloud/vendor/fog/lib/fog/core/wait_for.rb +0 -17
- data/lib/bbcloud/vendor/fog/lib/fog/providers.rb +0 -9
- data/lib/bbcloud/vendor/fog/lib/fog/providers/brightbox.rb +0 -9
@@ -1,34 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/compute/models/brightbox/cloud_ip'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Brightbox
|
6
|
-
class Compute
|
7
|
-
|
8
|
-
class CloudIps < Fog::Collection
|
9
|
-
|
10
|
-
model Fog::Brightbox::Compute::CloudIp
|
11
|
-
|
12
|
-
def all
|
13
|
-
data = connection.list_cloud_ips
|
14
|
-
load(data)
|
15
|
-
end
|
16
|
-
|
17
|
-
def get(identifier)
|
18
|
-
return nil if identifier.nil? || identifier == ""
|
19
|
-
data = connection.get_cloud_ip(identifier)
|
20
|
-
new(data)
|
21
|
-
rescue Excon::Errors::NotFound
|
22
|
-
nil
|
23
|
-
end
|
24
|
-
|
25
|
-
def allocate
|
26
|
-
data = connection.create_cloud_ip
|
27
|
-
new(data)
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Brightbox
|
5
|
-
class Compute
|
6
|
-
|
7
|
-
class Flavor < Fog::Model
|
8
|
-
|
9
|
-
identity :id
|
10
|
-
|
11
|
-
attribute :url
|
12
|
-
attribute :name
|
13
|
-
attribute :status
|
14
|
-
|
15
|
-
attribute :handle
|
16
|
-
|
17
|
-
attribute :bits
|
18
|
-
attribute :cores
|
19
|
-
attribute :disk, :aliases => "disk_size"
|
20
|
-
attribute :ram
|
21
|
-
|
22
|
-
attribute :resource_type
|
23
|
-
attribute :description
|
24
|
-
|
25
|
-
def bits
|
26
|
-
0 # This is actually based on the Image type used. 32bit or 64bit Images are supported
|
27
|
-
end
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/compute/models/brightbox/flavor'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Brightbox
|
6
|
-
class Compute
|
7
|
-
|
8
|
-
class Flavors < Fog::Collection
|
9
|
-
|
10
|
-
model Fog::Brightbox::Compute::Flavor
|
11
|
-
|
12
|
-
def all
|
13
|
-
data = connection.list_server_types
|
14
|
-
load(data)
|
15
|
-
end
|
16
|
-
|
17
|
-
def get(identifier)
|
18
|
-
data = connection.get_server_type(identifier)
|
19
|
-
new(data)
|
20
|
-
rescue Excon::Errors::NotFound
|
21
|
-
nil
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,56 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Brightbox
|
5
|
-
class Compute
|
6
|
-
|
7
|
-
class Image < Fog::Model
|
8
|
-
|
9
|
-
identity :id
|
10
|
-
|
11
|
-
attribute :url
|
12
|
-
attribute :name
|
13
|
-
attribute :status
|
14
|
-
attribute :source
|
15
|
-
attribute :source_type
|
16
|
-
|
17
|
-
attribute :ancestor_id, :aliases => "ancestor", :squash => "id"
|
18
|
-
attribute :owner_id, :aliases => "owner", :squash => "id"
|
19
|
-
attribute :arch
|
20
|
-
|
21
|
-
attribute :resource_type
|
22
|
-
attribute :description
|
23
|
-
attribute :public
|
24
|
-
attribute :official
|
25
|
-
attribute :virtual_size
|
26
|
-
attribute :disk_size
|
27
|
-
attribute :created_at
|
28
|
-
|
29
|
-
def ready?
|
30
|
-
status == "available"
|
31
|
-
end
|
32
|
-
|
33
|
-
def save
|
34
|
-
requires :source, :arch
|
35
|
-
options = {
|
36
|
-
:source => source,
|
37
|
-
:arch => arch,
|
38
|
-
:name => name,
|
39
|
-
:description => description
|
40
|
-
}.delete_if {|k,v| v.nil? || v == "" }
|
41
|
-
data = connection.create_image(options)
|
42
|
-
merge_attributes(data)
|
43
|
-
true
|
44
|
-
end
|
45
|
-
|
46
|
-
def destroy
|
47
|
-
requires :identity
|
48
|
-
connection.destroy_image(identity)
|
49
|
-
true
|
50
|
-
end
|
51
|
-
|
52
|
-
end
|
53
|
-
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/compute/models/brightbox/image'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Brightbox
|
6
|
-
class Compute
|
7
|
-
|
8
|
-
class Images < Fog::Collection
|
9
|
-
|
10
|
-
model Fog::Brightbox::Compute::Image
|
11
|
-
|
12
|
-
def all
|
13
|
-
data = connection.list_images
|
14
|
-
load(data)
|
15
|
-
end
|
16
|
-
|
17
|
-
def get(identifier)
|
18
|
-
data = connection.get_image(identifier)
|
19
|
-
new(data)
|
20
|
-
rescue Excon::Errors::NotFound
|
21
|
-
nil
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Brightbox
|
5
|
-
class Compute
|
6
|
-
|
7
|
-
class LoadBalancer < Fog::Model
|
8
|
-
|
9
|
-
identity :id
|
10
|
-
|
11
|
-
attribute :url
|
12
|
-
attribute :name
|
13
|
-
attribute :status
|
14
|
-
attribute :resource_type
|
15
|
-
|
16
|
-
attribute :nodes
|
17
|
-
attribute :policy
|
18
|
-
attribute :healthcheck
|
19
|
-
attribute :listeners
|
20
|
-
attribute :account
|
21
|
-
|
22
|
-
def ready?
|
23
|
-
status == 'active'
|
24
|
-
end
|
25
|
-
|
26
|
-
def save
|
27
|
-
requires :nodes, :listeners, :healthcheck
|
28
|
-
options = {
|
29
|
-
:nodes => nodes,
|
30
|
-
:listeners => listeners,
|
31
|
-
:healthcheck => healthcheck,
|
32
|
-
:policy => policy,
|
33
|
-
:name => name
|
34
|
-
}.delete_if {|k,v| v.nil? || v == "" }
|
35
|
-
data = connection.create_load_balancer(options)
|
36
|
-
merge_attributes(data)
|
37
|
-
true
|
38
|
-
end
|
39
|
-
|
40
|
-
def destroy
|
41
|
-
requires :identity
|
42
|
-
connection.destroy_load_balancer(identity)
|
43
|
-
true
|
44
|
-
end
|
45
|
-
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/compute/models/brightbox/load_balancer'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Brightbox
|
6
|
-
class Compute
|
7
|
-
|
8
|
-
class LoadBalancers < Fog::Collection
|
9
|
-
|
10
|
-
model Fog::Brightbox::Compute::LoadBalancer
|
11
|
-
|
12
|
-
def all
|
13
|
-
data = connection.list_load_balancers
|
14
|
-
load(data)
|
15
|
-
end
|
16
|
-
|
17
|
-
def get(identifier)
|
18
|
-
data = connection.get_load_balancer(identifier)
|
19
|
-
new(data)
|
20
|
-
rescue Excon::Errors::NotFound
|
21
|
-
nil
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,108 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Brightbox
|
5
|
-
class Compute
|
6
|
-
|
7
|
-
class Server < Fog::Model
|
8
|
-
|
9
|
-
identity :id
|
10
|
-
|
11
|
-
attribute :url
|
12
|
-
attribute :name
|
13
|
-
attribute :status
|
14
|
-
attribute :hostname
|
15
|
-
attribute :created_at, :type => :time
|
16
|
-
attribute :deleted_at, :type => :time
|
17
|
-
attribute :started_at, :type => :time
|
18
|
-
attribute :user_data
|
19
|
-
|
20
|
-
attribute :resource_type
|
21
|
-
|
22
|
-
attribute :account_id, :aliases => "account", :squash => "id"
|
23
|
-
attribute :image_id, :aliases => "image", :squash => "id"
|
24
|
-
attribute :flavor_id, :aliases => "server_type", :squash => "id"
|
25
|
-
attribute :zone_id, :aliases => "zone", :squash => "id"
|
26
|
-
|
27
|
-
attribute :snapshots
|
28
|
-
attribute :cloud_ips
|
29
|
-
attribute :interfaces
|
30
|
-
|
31
|
-
def snapshot
|
32
|
-
requires :identity
|
33
|
-
connection.snapshot_server(identity)
|
34
|
-
end
|
35
|
-
|
36
|
-
def reboot
|
37
|
-
false
|
38
|
-
end
|
39
|
-
|
40
|
-
def start
|
41
|
-
requires :identity
|
42
|
-
connection.start_server(identity)
|
43
|
-
true
|
44
|
-
end
|
45
|
-
|
46
|
-
def stop
|
47
|
-
requires :identity
|
48
|
-
connection.stop_server(identity)
|
49
|
-
true
|
50
|
-
end
|
51
|
-
|
52
|
-
def shutdown
|
53
|
-
requires :identity
|
54
|
-
connection.shutdown_server(identity)
|
55
|
-
true
|
56
|
-
end
|
57
|
-
|
58
|
-
def destroy
|
59
|
-
requires :identity
|
60
|
-
connection.destroy_server(identity)
|
61
|
-
true
|
62
|
-
end
|
63
|
-
|
64
|
-
def flavor
|
65
|
-
requires :flavor_id
|
66
|
-
connection.flavors.get(flavor_id)
|
67
|
-
end
|
68
|
-
|
69
|
-
def image
|
70
|
-
requires :image_id
|
71
|
-
connection.images.get(image_id)
|
72
|
-
end
|
73
|
-
|
74
|
-
def private_ip_address
|
75
|
-
nil
|
76
|
-
end
|
77
|
-
|
78
|
-
def public_ip_address
|
79
|
-
cloud_ips.first
|
80
|
-
end
|
81
|
-
|
82
|
-
def ready?
|
83
|
-
status == 'active'
|
84
|
-
end
|
85
|
-
|
86
|
-
def activate_console
|
87
|
-
requires :identity
|
88
|
-
response = connection.activate_console_server(identity)
|
89
|
-
[response["console_url"], response["console_token"], response["console_token_expires"]]
|
90
|
-
end
|
91
|
-
|
92
|
-
def save
|
93
|
-
requires :image_id
|
94
|
-
options = {
|
95
|
-
:image => image_id,
|
96
|
-
:server_type => flavor_id,
|
97
|
-
:name => name,
|
98
|
-
:zone => zone_id,
|
99
|
-
:user_data => user_data
|
100
|
-
}.delete_if {|k,v| v.nil? || v == "" }
|
101
|
-
data = connection.create_server(options)
|
102
|
-
merge_attributes(data)
|
103
|
-
true
|
104
|
-
end
|
105
|
-
end
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/compute/models/brightbox/server'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Brightbox
|
6
|
-
class Compute
|
7
|
-
|
8
|
-
class Servers < Fog::Collection
|
9
|
-
|
10
|
-
model Fog::Brightbox::Compute::Server
|
11
|
-
|
12
|
-
def all
|
13
|
-
data = connection.list_servers
|
14
|
-
load(data)
|
15
|
-
end
|
16
|
-
|
17
|
-
def get(identifier)
|
18
|
-
return nil if identifier.nil? || identifier == ""
|
19
|
-
data = connection.get_server(identifier)
|
20
|
-
new(data)
|
21
|
-
rescue Excon::Errors::NotFound
|
22
|
-
nil
|
23
|
-
end
|
24
|
-
|
25
|
-
end
|
26
|
-
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Brightbox
|
5
|
-
class Compute
|
6
|
-
|
7
|
-
class User < Fog::Model
|
8
|
-
|
9
|
-
identity :id
|
10
|
-
|
11
|
-
attribute :url
|
12
|
-
attribute :resource_type
|
13
|
-
attribute :name
|
14
|
-
attribute :email_address
|
15
|
-
attribute :email_verified
|
16
|
-
attribute :ssh_key
|
17
|
-
|
18
|
-
attribute :account_id, :aliases => "default_account", :squash => "id"
|
19
|
-
attribute :accounts
|
20
|
-
|
21
|
-
def save
|
22
|
-
requires :identity
|
23
|
-
|
24
|
-
options = {
|
25
|
-
:email_address => email_address,
|
26
|
-
:ssh_key => ssh_key,
|
27
|
-
:name => name
|
28
|
-
}
|
29
|
-
|
30
|
-
data = connection.update_user(identity, options)
|
31
|
-
merge_attributes(data)
|
32
|
-
true
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|