solutious-rudy 0.9.0 → 0.9.1
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.
- data/CHANGES.txt +61 -4
- data/README.rdoc +91 -53
- data/Rakefile +0 -92
- data/Rudyfile +15 -25
- data/bin/rudy +52 -41
- data/examples/gem-test.rb +92 -0
- data/lib/rudy.rb +15 -7
- data/lib/rudy/aws.rb +2 -2
- data/lib/rudy/aws/ec2.rb +2 -2
- data/lib/rudy/aws/ec2/instance.rb +3 -3
- data/lib/rudy/aws/ec2/volume.rb +4 -4
- data/lib/rudy/cli/aws/ec2/candy.rb +13 -13
- data/lib/rudy/cli/base.rb +10 -4
- data/lib/rudy/cli/config.rb +13 -3
- data/lib/rudy/cli/disks.rb +1 -1
- data/lib/rudy/cli/execbase.rb +5 -2
- data/lib/rudy/cli/machines.rb +231 -30
- data/lib/rudy/cli/networks.rb +34 -0
- data/lib/rudy/cli/routines.rb +1 -1
- data/lib/rudy/cli/status.rb +60 -0
- data/lib/rudy/config.rb +42 -14
- data/lib/rudy/exceptions.rb +5 -1
- data/lib/rudy/global.rb +29 -13
- data/lib/rudy/huxtable.rb +2 -2
- data/lib/rudy/machines.rb +2 -2
- data/lib/rudy/metadata/disk.rb +2 -1
- data/lib/rudy/routines.rb +3 -3
- data/lib/rudy/routines/base.rb +7 -4
- data/lib/rudy/routines/handlers/disks.rb +16 -6
- data/lib/rudy/routines/handlers/group.rb +5 -3
- data/lib/rudy/routines/handlers/host.rb +14 -16
- data/lib/rudy/routines/handlers/script.rb +2 -2
- data/lib/rudy/routines/handlers/user.rb +4 -0
- data/lib/rudy/routines/reboot.rb +26 -9
- data/lib/rudy/routines/shutdown.rb +4 -0
- data/lib/rudy/routines/startup.rb +3 -2
- data/lib/rudy/utils.rb +23 -9
- data/rudy.gemspec +10 -29
- data/tryouts/10_require_time/10_rudy_tryouts.rb +1 -1
- data/tryouts/{misc/console_tryout.rb → exploration/console.rb} +0 -0
- data/tryouts/{misc/usage_tryout.rb → exploration/machine.rb} +0 -0
- data/tryouts/failer +1 -1
- metadata +8 -70
- data/tryouts/misc/disks_tryout.rb +0 -48
- data/tryouts/misc/drydock_tryout.rb +0 -48
- data/tryouts/misc/nested_methods.rb +0 -103
- data/tryouts/misc/session_tryout.rb +0 -46
- data/tryouts/misc/tryouts.rb +0 -33
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby
|
2
|
-
|
3
|
-
# Tryout - Fix namespace conflicts between Drydock, Rudy, and Caesars
|
4
|
-
#
|
5
|
-
|
6
|
-
$:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
|
7
|
-
|
8
|
-
require 'drydock'
|
9
|
-
require 'tryouts'
|
10
|
-
include Tryouts
|
11
|
-
|
12
|
-
Drydock.run = false
|
13
|
-
|
14
|
-
tryout("include within module") do
|
15
|
-
module SomeModule
|
16
|
-
include Drydock
|
17
|
-
before do
|
18
|
-
end
|
19
|
-
puts "Works!" # Doesn't run
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
tryout("extend within module") do
|
24
|
-
module SomeModule
|
25
|
-
extend Drydock
|
26
|
-
before do
|
27
|
-
end
|
28
|
-
puts "Works!" # Runs
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
tryout("use before in main without include or extend") do
|
33
|
-
before do
|
34
|
-
end
|
35
|
-
puts "Works!" # Runs
|
36
|
-
end
|
37
|
-
|
38
|
-
tryout("include within main, use before in SomeModule") do
|
39
|
-
include Drydock
|
40
|
-
before do
|
41
|
-
end
|
42
|
-
module SomeModule
|
43
|
-
before do
|
44
|
-
end
|
45
|
-
puts "just ran SomeModule.before" # Run
|
46
|
-
end
|
47
|
-
puts "Works!" # Runs
|
48
|
-
end
|
@@ -1,103 +0,0 @@
|
|
1
|
-
|
2
|
-
## Example 2
|
3
|
-
|
4
|
-
class Helper
|
5
|
-
attr_accessor :worker
|
6
|
-
def metaclass
|
7
|
-
(class << self; self; end)
|
8
|
-
end
|
9
|
-
|
10
|
-
def meta_eval &block
|
11
|
-
metaclass.instance_eval &block
|
12
|
-
end
|
13
|
-
|
14
|
-
def add_method(meth)
|
15
|
-
meta_eval do
|
16
|
-
define_method( meth ) do |val|
|
17
|
-
@worker2 = val if val
|
18
|
-
val
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
h = Helper.new
|
25
|
-
h.worker = true
|
26
|
-
h.add_method(:worker2)
|
27
|
-
h.worker2(1)
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
__END__
|
32
|
-
|
33
|
-
## Example 1 -- test3 is not available until after test2 is called
|
34
|
-
module Helper
|
35
|
-
|
36
|
-
def test1
|
37
|
-
puts "test1"
|
38
|
-
|
39
|
-
def test2
|
40
|
-
def test3
|
41
|
-
puts "AWESOME"
|
42
|
-
end
|
43
|
-
|
44
|
-
puts "test2"
|
45
|
-
yield
|
46
|
-
end
|
47
|
-
|
48
|
-
def test3
|
49
|
-
puts "test3"
|
50
|
-
end
|
51
|
-
yield
|
52
|
-
end
|
53
|
-
|
54
|
-
end
|
55
|
-
|
56
|
-
include Helper
|
57
|
-
|
58
|
-
test1 do
|
59
|
-
puts "1"
|
60
|
-
test3 # => test3
|
61
|
-
test2 do
|
62
|
-
test3 # => AWESOME
|
63
|
-
puts "2"
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
# test2 # => throws error
|
68
|
-
|
69
|
-
__END__
|
70
|
-
|
71
|
-
## Sam's example -- "there" is available to the entire method after hello is called.
|
72
|
-
|
73
|
-
class Foo
|
74
|
-
|
75
|
-
def machines
|
76
|
-
puts '1'
|
77
|
-
end
|
78
|
-
|
79
|
-
def ami
|
80
|
-
puts '2'
|
81
|
-
end
|
82
|
-
|
83
|
-
end
|
84
|
-
|
85
|
-
|
86
|
-
class Bar
|
87
|
-
|
88
|
-
def hello
|
89
|
-
def there
|
90
|
-
puts '3'
|
91
|
-
end
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
|
96
|
-
Foo.new.machines
|
97
|
-
Foo.new.ami
|
98
|
-
Bar.new.hello
|
99
|
-
|
100
|
-
Bar.new.there
|
101
|
-
Bar.new.there
|
102
|
-
|
103
|
-
#class << self;
|
@@ -1,46 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby
|
2
|
-
|
3
|
-
$:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
|
4
|
-
|
5
|
-
require 'session'
|
6
|
-
require 'net/ssh'
|
7
|
-
require 'rye'
|
8
|
-
require 'yaml'
|
9
|
-
require 'stringio'
|
10
|
-
|
11
|
-
#p Rye.command('ssh', '-i', '', '')
|
12
|
-
|
13
|
-
module Rye::Box::Commands
|
14
|
-
def rudy(*args); command("/proj/git/rudy/bin/rudy", args); end
|
15
|
-
end
|
16
|
-
|
17
|
-
logger = StringIO.new
|
18
|
-
rbox = Rye::Box.new('localhost', 'delano', :stderr => logger).connect
|
19
|
-
#rbox2 = Rye::Box.new('ec2-174-129-173-3.compute-1.amazonaws.com', 'root')
|
20
|
-
#rbox.add_keys('/Users/delano/Projects/git/rudy/.rudy/key-test-app')
|
21
|
-
#rbox.connect
|
22
|
-
#puts rbox.date
|
23
|
-
#puts rbox.pwd
|
24
|
-
puts rbox['/usr/bin'].pwd
|
25
|
-
puts rbox.uptime
|
26
|
-
puts rbox.can
|
27
|
-
puts rbox.echo '$HOME'
|
28
|
-
puts rbox.rudy('myaddress')
|
29
|
-
rbox.disconnect
|
30
|
-
#puts logger.read
|
31
|
-
#>>
|
32
|
-
|
33
|
-
__END__
|
34
|
-
|
35
|
-
|
36
|
-
rgroup = Rye::Group.new('root', 'keydir/file')
|
37
|
-
rgroup.add_hosts('ec2-174-129-173-3.compute-1.amazonaws.com')
|
38
|
-
rgroup.command('hostname')
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
#shell = Session::Shell.new
|
43
|
-
|
44
|
-
#p shell.execute('ssh -T -t -i /Users/delano/Projects/git/rudy/.rudy/key-test-app.private root@ec2-174-129-82-193.compute-1.amazonaws.com')
|
45
|
-
|
46
|
-
#Net::SSH.configuration_for(localhost, ssh_options.fetch(:config, true)).merge(ssh_options)
|
data/tryouts/misc/tryouts.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
|
2
|
-
require 'ostruct'
|
3
|
-
|
4
|
-
module Tryouts
|
5
|
-
|
6
|
-
# tryout :name do
|
7
|
-
# ...
|
8
|
-
# end
|
9
|
-
def tryout(name, &b)
|
10
|
-
puts '-'*50
|
11
|
-
puts "Running#{@poop}: #{name}"
|
12
|
-
begin
|
13
|
-
b.call
|
14
|
-
sleep 0.1
|
15
|
-
rescue Interrupt
|
16
|
-
rescue => ex
|
17
|
-
STDERR.puts "Tryout error: #{ex.message}"
|
18
|
-
end
|
19
|
-
puts $/*2
|
20
|
-
end
|
21
|
-
|
22
|
-
# Ignore everything
|
23
|
-
def xtryout(name, &b)
|
24
|
-
end
|
25
|
-
|
26
|
-
# Is this wacky syntax useful for anything?
|
27
|
-
# t2 :set .
|
28
|
-
# run = "poop"
|
29
|
-
def t2(*args)
|
30
|
-
OpenStruct.new
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|