cloudstack-cli 0.3.6 → 0.3.7
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.
@@ -8,23 +8,23 @@ class PortRule < CloudstackCli::Base
|
|
8
8
|
option :network, required: true, aliases: '-n'
|
9
9
|
option :project
|
10
10
|
def create(server_name)
|
11
|
-
|
11
|
+
projectid = find_project['id'] if options[:project]
|
12
|
+
unless server = client.get_server(server_name, projectid)
|
12
13
|
error "Server #{server_name} not found."
|
13
14
|
exit 1
|
14
15
|
end
|
15
16
|
frontendip = nil
|
16
|
-
project = client.get_project(project)
|
17
17
|
options[:rules].each do |pf_rule|
|
18
18
|
ip = pf_rule.split(":")[0]
|
19
19
|
if ip != ''
|
20
|
-
ip_addr = client.get_public_ip_address(ip)
|
20
|
+
ip_addr = client.get_public_ip_address(ip, projectid)
|
21
21
|
unless ip_addr
|
22
22
|
say "Error: IP #{ip} not found.", :red
|
23
23
|
next
|
24
24
|
end
|
25
25
|
else
|
26
26
|
ip_addr = frontendip ||= client.associate_ip_address(
|
27
|
-
client.get_network(options[:network],
|
27
|
+
client.get_network(options[:network], projectid)
|
28
28
|
)
|
29
29
|
end
|
30
30
|
port = pf_rule.split(":")[1]
|
@@ -141,7 +141,7 @@ class Router < CloudstackCli::Base
|
|
141
141
|
say "No routers found."
|
142
142
|
else
|
143
143
|
table = [[
|
144
|
-
'Name', 'Zone', 'Account', 'Project', 'Redundant-State', 'IP', 'Linklocal IP', 'Status', 'ID'
|
144
|
+
'Name', 'Zone', 'Account', 'Project', 'Redundant-State', 'IP', 'Linklocal IP', 'Status', 'Redundant', 'ID'
|
145
145
|
]]
|
146
146
|
table[0].delete('ID') unless options[:showid]
|
147
147
|
routers.each do |router|
|
@@ -154,6 +154,7 @@ class Router < CloudstackCli::Base
|
|
154
154
|
router["nic"].first ? router["nic"].first['ipaddress'] : "",
|
155
155
|
router["linklocalip"],
|
156
156
|
router["state"],
|
157
|
+
router["isredundantrouter"],
|
157
158
|
router["id"]
|
158
159
|
]
|
159
160
|
table[-1].delete_at(-1) unless table[0].index "ID"
|
@@ -36,11 +36,12 @@ module CloudstackClient
|
|
36
36
|
##
|
37
37
|
# Finds the public ip address for a given ip address string.
|
38
38
|
|
39
|
-
def get_public_ip_address(ip_address)
|
39
|
+
def get_public_ip_address(ip_address, project_id = nil)
|
40
40
|
params = {
|
41
41
|
'command' => 'listPublicIpAddresses',
|
42
42
|
'ipaddress' => ip_address
|
43
43
|
}
|
44
|
+
params['projectid'] = project_id if project_id
|
44
45
|
json = send_request(params)
|
45
46
|
ip_address = json['publicipaddress']
|
46
47
|
|
metadata
CHANGED
@@ -1,32 +1,36 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloudstack-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.7
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Nik Wolfgramm
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-09-
|
12
|
+
date: 2013-09-23 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: rdoc
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- - '>='
|
19
|
+
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: '0'
|
20
22
|
type: :development
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
|
-
- - '>='
|
27
|
+
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '0'
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: rake
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
35
|
- - ~>
|
32
36
|
- !ruby/object:Gem::Version
|
@@ -34,6 +38,7 @@ dependencies:
|
|
34
38
|
type: :development
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
43
|
- - ~>
|
39
44
|
- !ruby/object:Gem::Version
|
@@ -41,6 +46,7 @@ dependencies:
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: thor
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
51
|
- - ~>
|
46
52
|
- !ruby/object:Gem::Version
|
@@ -48,6 +54,7 @@ dependencies:
|
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
59
|
- - ~>
|
53
60
|
- !ruby/object:Gem::Version
|
@@ -125,7 +132,6 @@ files:
|
|
125
132
|
homepage: https://bitbucket.org/swisstxt/cloudstack-cli
|
126
133
|
licenses:
|
127
134
|
- MIT
|
128
|
-
metadata: {}
|
129
135
|
post_install_message:
|
130
136
|
rdoc_options:
|
131
137
|
- --line-numbers
|
@@ -133,20 +139,22 @@ rdoc_options:
|
|
133
139
|
require_paths:
|
134
140
|
- lib
|
135
141
|
required_ruby_version: !ruby/object:Gem::Requirement
|
142
|
+
none: false
|
136
143
|
requirements:
|
137
|
-
- - '>='
|
144
|
+
- - ! '>='
|
138
145
|
- !ruby/object:Gem::Version
|
139
146
|
version: 1.9.3
|
140
147
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
148
|
+
none: false
|
141
149
|
requirements:
|
142
|
-
- - '>='
|
150
|
+
- - ! '>='
|
143
151
|
- !ruby/object:Gem::Version
|
144
152
|
version: '0'
|
145
153
|
requirements: []
|
146
154
|
rubyforge_project:
|
147
|
-
rubygems_version:
|
155
|
+
rubygems_version: 1.8.23
|
148
156
|
signing_key:
|
149
|
-
specification_version:
|
157
|
+
specification_version: 3
|
150
158
|
summary: cloudstack-cli CloudStack API client
|
151
159
|
test_files:
|
152
160
|
- test/stack_example.json
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: 458ba90540b0b908c9a3a7a17e872398430d499d
|
4
|
-
data.tar.gz: 4c4ecde3c9ec1258ba99a7ac977448a547730312
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 369788758e78349fe10e0f44909a9c9746f8f4f0ea4a34a3f3e2d5df8bb78b9fa5deae056c0d36345286a721b72b56f3c62d0183dac5092ab0dc166cf220724c
|
7
|
-
data.tar.gz: 171a58cdafca0ee8a63dd1e77a3a4743eb61a0b7a579d7fd5f64669852d62386c30880178a94107770bb7c5d85c494725bba6fcb0f3248dd084cf0ad763efcd2
|