cloudstack-cli 0.1.7 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Gemfile.lock +1 -3
- data/cloudstack-cli.gemspec +0 -1
- data/lib/cloudstack-cli/base.rb +3 -0
- data/lib/cloudstack-cli/cli.rb +5 -0
- data/lib/cloudstack-cli/commands/server.rb +8 -7
- data/lib/cloudstack-cli/helper.rb +6 -2
- data/lib/cloudstack-cli/version.rb +1 -1
- data/lib/cloudstack-client/client.rb +7 -980
- data/lib/cloudstack-client/commands/account.rb +22 -0
- data/lib/cloudstack-client/commands/capacity.rb +19 -0
- data/lib/cloudstack-client/commands/command_template +8 -0
- data/lib/cloudstack-client/commands/disk_offering.rb +49 -0
- data/lib/cloudstack-client/commands/domain.rb +22 -0
- data/lib/cloudstack-client/commands/ip_address.rb +77 -0
- data/lib/cloudstack-client/commands/iso.rb +60 -0
- data/lib/cloudstack-client/commands/load_balancer_rule.rb +61 -0
- data/lib/cloudstack-client/commands/network.rb +101 -0
- data/lib/cloudstack-client/commands/port_forwarding_rule.rb +50 -0
- data/lib/cloudstack-client/commands/project.rb +32 -0
- data/lib/cloudstack-client/commands/router.rb +74 -0
- data/lib/cloudstack-client/commands/server.rb +291 -0
- data/lib/cloudstack-client/commands/service_offering.rb +98 -0
- data/lib/cloudstack-client/commands/template.rb +60 -0
- data/lib/cloudstack-client/commands/volumes.rb +20 -0
- data/lib/cloudstack-client/commands/zone.rb +57 -0
- data/lib/cloudstack-client/helper.rb +2 -2
- data/lib/cloudstack-client/version.rb +3 -0
- data/lib/cloudstack_cli.rb +0 -8
- data/lib/cloudstack_client.rb +2 -2
- metadata +26 -34
- data/config/cloudstack.example.yml +0 -3
- data/lib/cloudstack-client/ssh_command.rb +0 -15
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8af3fabe042b05ed56a834d27d440330855a9519
|
4
|
+
data.tar.gz: 0c436d43e029cb1bd32069996f804eef1e38805d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: cb8be056ad1c9c3b323ef8360a4a245a405f73bb3dcf9097f088ea432b6cc6cb2a664ddf8d46527aa5863a4b23f24cd215c3eac1278c210dd498a4429e208415
|
7
|
+
data.tar.gz: eb40a1ed892960a8ada945d44b5d6491b71ff770d453a4f19a17cb3f517c61ee6d584f3830060a3635c3aa35a354c4ab479abf439ddfc64ddeaa21be15ab6ff9
|
data/Gemfile.lock
CHANGED
@@ -1,15 +1,13 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cloudstack-cli (0.
|
5
|
-
net-ssh (~> 2.6.7)
|
4
|
+
cloudstack-cli (0.2.0)
|
6
5
|
thor (~> 0.18.1)
|
7
6
|
|
8
7
|
GEM
|
9
8
|
remote: https://rubygems.org/
|
10
9
|
specs:
|
11
10
|
json (1.8.0)
|
12
|
-
net-ssh (2.6.8)
|
13
11
|
rake (10.0.4)
|
14
12
|
rdoc (4.0.1)
|
15
13
|
json (~> 1.4)
|
data/cloudstack-cli.gemspec
CHANGED
data/lib/cloudstack-cli/base.rb
CHANGED
data/lib/cloudstack-cli/cli.rb
CHANGED
@@ -48,6 +48,11 @@ module CloudstackCli
|
|
48
48
|
end
|
49
49
|
puts JSON.pretty_generate(client.send_request params)
|
50
50
|
end
|
51
|
+
|
52
|
+
# require subcommands
|
53
|
+
Dir[File.dirname(__FILE__) + '/commands/*.rb'].each do |command|
|
54
|
+
require command
|
55
|
+
end
|
51
56
|
|
52
57
|
desc "zone SUBCOMMAND ...ARGS", "Manage zones"
|
53
58
|
subcommand "zone", Zone
|
@@ -33,16 +33,19 @@ class Server < CloudstackCli::Base
|
|
33
33
|
end
|
34
34
|
|
35
35
|
desc "create NAME", "create a server"
|
36
|
-
option :
|
37
|
-
option :
|
36
|
+
option :template, desc: "name of the template"
|
37
|
+
option :iso, desc: "name of the iso"
|
38
38
|
option :offering, required: true
|
39
|
-
option :networks, type: :array
|
39
|
+
option :networks, type: :array
|
40
|
+
option :zone
|
40
41
|
option :project
|
41
42
|
option :port_rules, type: :array,
|
42
43
|
default: [],
|
43
44
|
desc: "Port Forwarding Rules [public_ip]:port ..."
|
44
45
|
option :disk_offering
|
45
|
-
option :
|
46
|
+
option :disk_size, desc: "disk size in GB"
|
47
|
+
option :hypervisor, desc: "only used for iso deployments, default: vmware"
|
48
|
+
option :keypair, desc: "the name of the ssh keypair to use"
|
46
49
|
def create(name)
|
47
50
|
if project = find_project
|
48
51
|
project_id = project["id"]
|
@@ -51,9 +54,7 @@ class Server < CloudstackCli::Base
|
|
51
54
|
unless server
|
52
55
|
say "Create server #{name}...", :yellow
|
53
56
|
server = client.create_server(
|
54
|
-
name
|
55
|
-
options[:zone], options[:networks], options[:project],
|
56
|
-
options[:disk_offering], options[:hypervisor]
|
57
|
+
options.merge({name: name})
|
57
58
|
)
|
58
59
|
puts
|
59
60
|
say "Server #{name} has been created.", :green
|
@@ -20,8 +20,12 @@ module CloudstackCli
|
|
20
20
|
unless server
|
21
21
|
say "Create server #{name}..."
|
22
22
|
server = client.create_server(
|
23
|
-
name
|
24
|
-
|
23
|
+
name: name,
|
24
|
+
offering: offering,
|
25
|
+
template: template,
|
26
|
+
zone: zone,
|
27
|
+
networks: networks,
|
28
|
+
project: project_name
|
25
29
|
)
|
26
30
|
puts
|
27
31
|
say "Server #{server["name"]} has been created.", :green
|