cloudstack_client 0.4.1 → 0.4.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7468c8972d624355482e3946e890bd8b542e5b30
4
- data.tar.gz: 3ef12511c1d261aab67bea420f14c1179dcb185c
3
+ metadata.gz: e9fbb45ce40bdb0236d5343c0cbc3b4c10db971d
4
+ data.tar.gz: c5424aaf51e164f39ffec350e092cb66b0d0302e
5
5
  SHA512:
6
- metadata.gz: bc02b7356af99bae24863ff226baa5295272134a946177ce4fe218cfccf4ea08c609472cb6a9459cdce551fbf43c1f6ace4bbb224649f50ebb3ae944dd3ae2e8
7
- data.tar.gz: 5b5f73dd889f9e00f0a7714a6e841d781d7bcf856ac18ce4056f15d81c7b0733ba3446cc400f98e04b02883adab8770e7549416811170b246bae8cf2ea680b01
6
+ metadata.gz: f188a35132d0fb2ddb6ab2751fbc520b80d270a7ab38904395410dbde12811a5120edd7c50cb0df27b2ca6b0e1c3bb8a3c2d69d9c72173475cb2470d2de39788
7
+ data.tar.gz: dd9189799dee9b6b107ecbeda491f7eee3f0a687603b0dbf8f1888c526f9d960b1232ebead4f6ba36755db01a3b801feecffa1c7ed76e80cebfde79caea7c1ae
data/README.md CHANGED
@@ -2,16 +2,32 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/cloudstack_client.png)](http://badge.fury.io/rb/cloudstack_client)
4
4
 
5
- A ruby CloudStack API client.
5
+ A CloudStack API client written in Ruby.
6
6
 
7
7
  ## Installation
8
8
 
9
9
  Install the cloudstack_client gem:
10
10
 
11
11
  $ gem install cloudstack_client
12
+
13
+ ## Usage
14
+
15
+ ```ruby
16
+ require "cloudstack_client"
17
+
18
+ cs = CloudstackClient::Connection.new(
19
+ 'https://cloudstack.url/client/api',
20
+ 'API_KEY',
21
+ 'API_SECRET'
22
+ )
23
+
24
+ cs.list_servers(status: 'running').each do |server|
25
+ puts server['name']
26
+ end
27
+ ```
12
28
 
13
29
  ## References
14
- - [Cloudstack API documentation](http://cloudstack.apache.org/docs/api/apidocs-4.2/TOC_Root_Admin.html)
30
+ - [Apache CloudStack API documentation](http://cloudstack.apache.org/docs/api/)
15
31
 
16
32
  ## Contributing
17
33
 
@@ -23,6 +39,6 @@ Install the cloudstack_client gem:
23
39
 
24
40
  ## License
25
41
 
26
- Copyright (c) 2013, Nik Wolfgramm
42
+ Copyright (c) 2014, Nik Wolfgramm
27
43
 
28
44
  Released under the MIT License. See the [LICENSE](https://raw.github.com/niwo/cloudstack_client/master/LICENSE.txt) file for further details.
@@ -8,8 +8,8 @@ Gem::Specification.new do |gem|
8
8
  gem.version = CloudstackClient::VERSION
9
9
  gem.authors = ["Nik Wolfgramm"]
10
10
  gem.email = ["nik.wolfgramm@gmail.com"]
11
- gem.description = %q{A ruby CloudStack API client}
12
- gem.summary = %q{A ruby CloudStack API client}
11
+ gem.description = %q{CloudStack API client written in Ruby}
12
+ gem.summary = %q{CloudStack API client written in Ruby}
13
13
  gem.homepage = "https://github.com/niwo/cloudstack_client"
14
14
  gem.license = 'MIT'
15
15
 
@@ -20,5 +20,5 @@ Gem::Specification.new do |gem|
20
20
  gem.rdoc_options = %w[--line-numbers --inline-source]
21
21
 
22
22
  gem.add_development_dependency('rdoc')
23
- gem.add_development_dependency('rake', '~> 10.0.4')
24
- end
23
+ gem.add_development_dependency('rake', '~> 10.0', '>= 10.0.4')
24
+ end
@@ -74,7 +74,7 @@ module CloudstackClient
74
74
  if response.is_a? Net::HTTPOK
75
75
  begin
76
76
  json = JSON.parse(response.body)
77
- json[params['command'].downcase + 'response']
77
+ json = json[params['command'].downcase + 'response']
78
78
  rescue JSON::ParserError
79
79
  puts "Error parsing response from server:"
80
80
  puts response.body
@@ -83,10 +83,12 @@ module CloudstackClient
83
83
  else
84
84
  begin
85
85
  json = JSON.parse(response.body)
86
- puts "Error executing command."
87
- puts "#{json['errorresponse']['errorcode']}: #{json['errorresponse']['errortext']}"
88
- rescue JSON::ParserError
89
- puts "Error parsing response from server."
86
+ puts "Error executing command..."
87
+ puts json if @debug
88
+ json = json[params['command'].downcase + 'response']
89
+ puts "#{json['errorcode']}: #{json['errortext']}"
90
+ rescue
91
+ puts "Error parsing response from server..."
90
92
  puts "#{response.code}: #{response.body}"
91
93
  end
92
94
  exit 3
@@ -13,6 +13,8 @@ module CloudstackClient
13
13
  }
14
14
  params['projectid'] = args[:project_id] if args[:project_id]
15
15
 
16
+
17
+ params['domainid'] = args[:domain_id] if args[:domain_id]
16
18
  if args[:account]
17
19
  account = list_accounts({name: args[:account]}).first
18
20
  unless account
@@ -4,7 +4,7 @@ module CloudstackClient
4
4
 
5
5
  ##
6
6
  # Lists all volumes.
7
-
7
+
8
8
  def list_volumes(args = {})
9
9
  params = {
10
10
  'command' => 'listVolumes',
@@ -40,6 +40,10 @@ module CloudstackClient
40
40
  params['type'] = args[:type] if args[:type]
41
41
  params['keyword'] = args[:keyword] if args[:keyword]
42
42
  params['name'] = args[:name] if args[:name]
43
+ params['virtualmachineid'] = args[:virtual_machine_id] if args[:virtual_machine_id]
44
+ params['tags'] = args[:tags] if args[:tags]
45
+ params['podid'] = args[:pod_id] if args[:pod_id]
46
+ params['isrecursive'] = args[:is_recursive] if args[:is_recursive]
43
47
 
44
48
  json = send_request(params)
45
49
  json['volume'] || []
@@ -1,3 +1,3 @@
1
1
  module CloudstackClient
2
- VERSION = "0.4.1"
2
+ VERSION = "0.4.2"
3
3
  end
metadata CHANGED
@@ -1,51 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudstack_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nik Wolfgramm
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-22 00:00:00.000000000 Z
11
+ date: 2014-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ - - '>='
32
35
  - !ruby/object:Gem::Version
33
36
  version: 10.0.4
34
37
  type: :development
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
- - - "~>"
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '10.0'
44
+ - - '>='
39
45
  - !ruby/object:Gem::Version
40
46
  version: 10.0.4
41
- description: A ruby CloudStack API client
47
+ description: CloudStack API client written in Ruby
42
48
  email:
43
49
  - nik.wolfgramm@gmail.com
44
50
  executables: []
45
51
  extensions: []
46
52
  extra_rdoc_files: []
47
53
  files:
48
- - ".gitignore"
54
+ - .gitignore
49
55
  - Gemfile
50
56
  - LICENSE.txt
51
57
  - README.md
@@ -86,24 +92,24 @@ licenses:
86
92
  metadata: {}
87
93
  post_install_message:
88
94
  rdoc_options:
89
- - "--line-numbers"
90
- - "--inline-source"
95
+ - --line-numbers
96
+ - --inline-source
91
97
  require_paths:
92
98
  - lib
93
99
  required_ruby_version: !ruby/object:Gem::Requirement
94
100
  requirements:
95
- - - ">="
101
+ - - '>='
96
102
  - !ruby/object:Gem::Version
97
103
  version: 1.9.3
98
104
  required_rubygems_version: !ruby/object:Gem::Requirement
99
105
  requirements:
100
- - - ">="
106
+ - - '>='
101
107
  - !ruby/object:Gem::Version
102
108
  version: '0'
103
109
  requirements: []
104
110
  rubyforge_project:
105
- rubygems_version: 2.2.0
111
+ rubygems_version: 2.0.3
106
112
  signing_key:
107
113
  specification_version: 4
108
- summary: A ruby CloudStack API client
114
+ summary: CloudStack API client written in Ruby
109
115
  test_files: []