cloudstack-cli 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/cloudstack-cli/base.rb +2 -12
- data/lib/cloudstack-cli/commands/account.rb +1 -1
- data/lib/cloudstack-cli/commands/stack.rb +3 -3
- data/lib/cloudstack-cli/option_resolver.rb +1 -1
- data/lib/cloudstack-cli/version.rb +1 -1
- data/test/stack_example.json +3 -3
- data/test/stack_example.yml +3 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dcc8b27372a5484703bb5d2abcacbaf10e9919a6
|
4
|
+
data.tar.gz: cf28ee4aa1149427ca4f2bc4d17207f4c5347d4c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc54fdd7737b8262ff72ca363ec5b34a42e256f20cb7bbf00a964b6cc9eaf0dd2af907c20a2996cb3648d53c03c199efe7e3d29e24b4c499093d945bf6add28f
|
7
|
+
data.tar.gz: e4bb9fbbac32e6cfb39585d5e473f41f242f526728071584130398a8af47edd4cf7ad95a59072c120434413ff25097ae0366d0e2738567957a7f1ebd942f33c4
|
data/lib/cloudstack-cli/base.rb
CHANGED
@@ -36,16 +36,6 @@ module CloudstackCli
|
|
36
36
|
true
|
37
37
|
end
|
38
38
|
|
39
|
-
# fix for subcommand help issues
|
40
|
-
# see https://github.com/erikhuda/thor/issues/261
|
41
|
-
# def self.banner(command, namespace = nil, subcommand = false)
|
42
|
-
# "#{basename} #{subcommand_prefix} #{command.usage}"
|
43
|
-
# end
|
44
|
-
#
|
45
|
-
# def self.subcommand_prefix
|
46
|
-
# self.name.gsub(%r{.*::}, '').gsub(%r{^[A-Z]}) { |match| match[0].downcase }.gsub(%r{[A-Z]}) { |match| "-#{match[0].downcase}" }
|
47
|
-
# end
|
48
|
-
|
49
39
|
no_commands do
|
50
40
|
def client
|
51
41
|
@config ||= load_configuration
|
@@ -82,7 +72,7 @@ module CloudstackCli
|
|
82
72
|
|
83
73
|
unless config.key?(:url) && config.key?(:api_key) && config.key?(:secret_key)
|
84
74
|
say "The environment #{env || '\'-\''} contains no valid data.", :red
|
85
|
-
say "Please check with '
|
75
|
+
say "Please check with 'cloudstack-cli environment list' and set a valid default environment."
|
86
76
|
exit 1
|
87
77
|
end
|
88
78
|
config
|
@@ -95,7 +85,7 @@ module CloudstackCli
|
|
95
85
|
def parse_file(file, extensions = %w(.json .yaml .yml))
|
96
86
|
handler = case File.extname(file)
|
97
87
|
when ".json"
|
98
|
-
Object.const_get "
|
88
|
+
Object.const_get "MultiJson"
|
99
89
|
when ".yaml", ".yml"
|
100
90
|
Object.const_get "YAML"
|
101
91
|
else
|
@@ -8,7 +8,7 @@ class Account < CloudstackCli::Base
|
|
8
8
|
|
9
9
|
desc "show NAME", "show detailed infos about an account"
|
10
10
|
def show(name)
|
11
|
-
unless account = client.list_accounts(name: name).first
|
11
|
+
unless account = client.list_accounts(name: name, listall: true).first
|
12
12
|
say "No account named \"#{name}\" found.", :red
|
13
13
|
else
|
14
14
|
account.delete 'user'
|
@@ -18,7 +18,7 @@ class Stack < CloudstackCli::Base
|
|
18
18
|
status: 1
|
19
19
|
}
|
20
20
|
else
|
21
|
-
options
|
21
|
+
options.merge!({
|
22
22
|
name: name,
|
23
23
|
displayname: instance["decription"],
|
24
24
|
zone: instance["zone"] || stack["zone"],
|
@@ -32,8 +32,8 @@ class Stack < CloudstackCli::Base
|
|
32
32
|
group: instance["group"] || stack["group"],
|
33
33
|
keypair: instance["keypair"] || stack["keypair"],
|
34
34
|
ip_address: instance["ip_address"],
|
35
|
-
|
36
|
-
|
35
|
+
})
|
36
|
+
|
37
37
|
jobs << {
|
38
38
|
id: client.deploy_virtual_machine(
|
39
39
|
vm_options_to_params,
|
@@ -7,7 +7,7 @@ module CloudstackCli
|
|
7
7
|
resolve_compute_offering
|
8
8
|
resolve_template
|
9
9
|
resolve_disk_offering
|
10
|
-
resolve_iso_for_vm_deployment
|
10
|
+
resolve_iso_for_vm_deployment if options[:iso]
|
11
11
|
options[:size] = options[:disk_size] if options[:disk_size]
|
12
12
|
unless options[:template_id]
|
13
13
|
say "Error: Template or ISO is required.", :red
|
data/test/stack_example.json
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
"name": "web_stack_a",
|
3
3
|
"description": "Web Application Stack",
|
4
4
|
"version": "1.0",
|
5
|
-
"zone": "
|
5
|
+
"zone": "ZUERICH_EQ",
|
6
6
|
"project": "Playground",
|
7
7
|
"group": "my_web_stack",
|
8
8
|
"servers": [
|
9
9
|
{
|
10
10
|
"name": "web-001, web-002",
|
11
11
|
"description": "Web nodes",
|
12
|
-
"template": "CentOS-
|
12
|
+
"template": "CentOS-7-x86_64",
|
13
13
|
"offering": "1cpu_1gb",
|
14
14
|
"networks": "M_PLAY",
|
15
15
|
"port_rules": ":80, :443"
|
@@ -17,7 +17,7 @@
|
|
17
17
|
{
|
18
18
|
"name": "db-001",
|
19
19
|
"description": "PostgreSQL Master",
|
20
|
-
"iso": "CentOS-7.0
|
20
|
+
"iso": "CentOS-7.0-x64",
|
21
21
|
"disk_offering": "Perf Storage",
|
22
22
|
"disk_size": "5",
|
23
23
|
"offering": "2cpu_4gb",
|
data/test/stack_example.yml
CHANGED
@@ -2,21 +2,21 @@
|
|
2
2
|
name: "web_stack_a"
|
3
3
|
description: "Web Application Stack"
|
4
4
|
version: "1.0"
|
5
|
-
zone: "
|
5
|
+
zone: "ZUERICH_EQ"
|
6
6
|
project: "Playground"
|
7
7
|
group: "my_web_stack"
|
8
8
|
servers:
|
9
9
|
-
|
10
10
|
name: "web-001, web-002"
|
11
11
|
description: "Web nodes"
|
12
|
-
template: "CentOS-
|
12
|
+
template: "CentOS-7-x86_64"
|
13
13
|
offering: "1cpu_1gb"
|
14
14
|
networks: "M_PLAY"
|
15
15
|
port_rules: ":80, :443"
|
16
16
|
-
|
17
17
|
name: "db-001"
|
18
18
|
description: "PostgreSQL Master"
|
19
|
-
iso: "CentOS-7.0
|
19
|
+
iso: "CentOS-7.0-x64"
|
20
20
|
disk_offering: "Perf Storage"
|
21
21
|
disk_size: "5"
|
22
22
|
offering: "2cpu_4gb"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloudstack-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nik Wolfgramm
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|