novawhiz 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/novawhiz.rb +17 -0
  2. metadata +44 -52
data/lib/novawhiz.rb CHANGED
@@ -42,6 +42,23 @@ class NovaWhiz
42
42
  end
43
43
  end
44
44
 
45
+ def server_by_name(name)
46
+ @os.servers.each do |s|
47
+ return @os.server(s[:id]) if s[:name] == name
48
+ end
49
+ nil
50
+ end
51
+
52
+ def delete_keypair_if_exists(name)
53
+ kp_names = @os.keypairs.values.map { |v| v[:name] }
54
+ @os.delete_keypair(name) if kp_names.include? name
55
+ end
56
+
57
+ def delete_if_exists(name)
58
+ s = server_by_name name
59
+ s.delete! if s
60
+ end
61
+
45
62
  def run_command(creds, cmd)
46
63
  res = Net::SSH::Simple.sync do
47
64
  ssh(creds[:ip], '/bin/sh', :user => creds[:user], :key_data => [creds[:key]]) do |e,c,d|
metadata CHANGED
@@ -1,75 +1,67 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: novawhiz
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.4
4
5
  prerelease:
5
- version: 0.0.3
6
6
  platform: ruby
7
- authors:
8
- - tim miller
7
+ authors:
8
+ - tim miller
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2012-09-11 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: openstack
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
19
- none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "0"
24
- type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: net-ssh-simple
28
- prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
30
- none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: "0"
35
- type: :runtime
36
- version_requirements: *id002
12
+ date: 2012-09-11 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: openstack
16
+ requirement: &11245900 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *11245900
25
+ - !ruby/object:Gem::Dependency
26
+ name: net-ssh-simple
27
+ requirement: &11245400 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *11245400
37
36
  description: library and command line tool for simplifying openstack nova operations
38
37
  email: none@example.com
39
38
  executables: []
40
-
41
39
  extensions: []
42
-
43
40
  extra_rdoc_files: []
44
-
45
- files:
46
- - lib/novawhiz.rb
41
+ files:
42
+ - lib/novawhiz.rb
47
43
  homepage: http://rubygems.org/gems/novawhiz
48
44
  licenses: []
49
-
50
45
  post_install_message:
51
46
  rdoc_options: []
52
-
53
- require_paths:
54
- - lib
55
- required_ruby_version: !ruby/object:Gem::Requirement
47
+ require_paths:
48
+ - lib
49
+ required_ruby_version: !ruby/object:Gem::Requirement
56
50
  none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: "0"
61
- required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
62
56
  none: false
63
- requirements:
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: "0"
57
+ requirements:
58
+ - - ! '>='
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
67
61
  requirements: []
68
-
69
62
  rubyforge_project:
70
- rubygems_version: 1.8.24
63
+ rubygems_version: 1.8.11
71
64
  signing_key:
72
65
  specification_version: 3
73
66
  summary: simplify nova operations
74
67
  test_files: []
75
-