novawhiz 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/bin/novawhiz +40 -0
  2. data/bin/nw +40 -0
  3. metadata +6 -2
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env ruby
2
+ require 'main'
3
+ require 'novawhiz'
4
+
5
+ Main do
6
+
7
+
8
+ def creds
9
+ {
10
+ :username => ENV['OS_USERNAME'],
11
+ :password => ENV['OS_PASSWORD'],
12
+ :authtenant => ENV['OS_TENANT_NAME'],
13
+ :auth_url => ENV['OS_AUTH_URL']
14
+ }
15
+ end
16
+
17
+ def run
18
+ STDERR.puts "must specify a subcommand. see `#{$0} help`"
19
+ exit 1
20
+ end
21
+
22
+ mode 'boot' do
23
+ raise 'todo'
24
+ def run
25
+ raise 'todo'
26
+ end
27
+ end
28
+
29
+ mode 'ssh' do
30
+ argument('name') { 'node name to ssh into' }
31
+ def run
32
+ opts = params.to_options
33
+ nw = NovaWhiz.new creds
34
+ node = nw.server_by_name opts['name']
35
+ exec "ssh -i ~/.ssh/keys/#{nw.keypair_name node}.pem #{nw.default_user node}@#{nw.public_ip node}"
36
+ end
37
+ end
38
+
39
+
40
+ end
data/bin/nw ADDED
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env ruby
2
+ require 'main'
3
+ require 'novawhiz'
4
+
5
+ Main do
6
+
7
+
8
+ def creds
9
+ {
10
+ :username => ENV['OS_USERNAME'],
11
+ :password => ENV['OS_PASSWORD'],
12
+ :authtenant => ENV['OS_TENANT_NAME'],
13
+ :auth_url => ENV['OS_AUTH_URL']
14
+ }
15
+ end
16
+
17
+ def run
18
+ STDERR.puts "must specify a subcommand. see `#{$0} help`"
19
+ exit 1
20
+ end
21
+
22
+ mode 'boot' do
23
+ raise 'todo'
24
+ def run
25
+ raise 'todo'
26
+ end
27
+ end
28
+
29
+ mode 'ssh' do
30
+ argument('name') { 'node name to ssh into' }
31
+ def run
32
+ opts = params.to_options
33
+ nw = NovaWhiz.new creds
34
+ node = nw.server_by_name opts['name']
35
+ exec "ssh -i ~/.ssh/keys/#{nw.keypair_name node}.pem #{nw.default_user node}@#{nw.public_ip node}"
36
+ end
37
+ end
38
+
39
+
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: novawhiz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -61,11 +61,15 @@ dependencies:
61
61
  version: '0'
62
62
  description: library and command line tool for simplifying openstack nova operations
63
63
  email: none@example.com
64
- executables: []
64
+ executables:
65
+ - novawhiz
66
+ - nw
65
67
  extensions: []
66
68
  extra_rdoc_files: []
67
69
  files:
68
70
  - lib/novawhiz.rb
71
+ - bin/novawhiz
72
+ - bin/nw
69
73
  homepage: http://rubygems.org/gems/novawhiz
70
74
  licenses: []
71
75
  post_install_message: