solutious-rudy 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. data/CHANGES.txt +61 -4
  2. data/README.rdoc +91 -53
  3. data/Rakefile +0 -92
  4. data/Rudyfile +15 -25
  5. data/bin/rudy +52 -41
  6. data/examples/gem-test.rb +92 -0
  7. data/lib/rudy.rb +15 -7
  8. data/lib/rudy/aws.rb +2 -2
  9. data/lib/rudy/aws/ec2.rb +2 -2
  10. data/lib/rudy/aws/ec2/instance.rb +3 -3
  11. data/lib/rudy/aws/ec2/volume.rb +4 -4
  12. data/lib/rudy/cli/aws/ec2/candy.rb +13 -13
  13. data/lib/rudy/cli/base.rb +10 -4
  14. data/lib/rudy/cli/config.rb +13 -3
  15. data/lib/rudy/cli/disks.rb +1 -1
  16. data/lib/rudy/cli/execbase.rb +5 -2
  17. data/lib/rudy/cli/machines.rb +231 -30
  18. data/lib/rudy/cli/networks.rb +34 -0
  19. data/lib/rudy/cli/routines.rb +1 -1
  20. data/lib/rudy/cli/status.rb +60 -0
  21. data/lib/rudy/config.rb +42 -14
  22. data/lib/rudy/exceptions.rb +5 -1
  23. data/lib/rudy/global.rb +29 -13
  24. data/lib/rudy/huxtable.rb +2 -2
  25. data/lib/rudy/machines.rb +2 -2
  26. data/lib/rudy/metadata/disk.rb +2 -1
  27. data/lib/rudy/routines.rb +3 -3
  28. data/lib/rudy/routines/base.rb +7 -4
  29. data/lib/rudy/routines/handlers/disks.rb +16 -6
  30. data/lib/rudy/routines/handlers/group.rb +5 -3
  31. data/lib/rudy/routines/handlers/host.rb +14 -16
  32. data/lib/rudy/routines/handlers/script.rb +2 -2
  33. data/lib/rudy/routines/handlers/user.rb +4 -0
  34. data/lib/rudy/routines/reboot.rb +26 -9
  35. data/lib/rudy/routines/shutdown.rb +4 -0
  36. data/lib/rudy/routines/startup.rb +3 -2
  37. data/lib/rudy/utils.rb +23 -9
  38. data/rudy.gemspec +10 -29
  39. data/tryouts/10_require_time/10_rudy_tryouts.rb +1 -1
  40. data/tryouts/{misc/console_tryout.rb → exploration/console.rb} +0 -0
  41. data/tryouts/{misc/usage_tryout.rb → exploration/machine.rb} +0 -0
  42. data/tryouts/failer +1 -1
  43. metadata +8 -70
  44. data/tryouts/misc/disks_tryout.rb +0 -48
  45. data/tryouts/misc/drydock_tryout.rb +0 -48
  46. data/tryouts/misc/nested_methods.rb +0 -103
  47. data/tryouts/misc/session_tryout.rb +0 -46
  48. 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)
@@ -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