textgoeshere-daemon-kit 0.1.8rc3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (185) hide show
  1. data/.gitignore +5 -0
  2. data/Configuration.txt +110 -0
  3. data/Deployment.txt +113 -0
  4. data/History.txt +124 -0
  5. data/Logging.txt +96 -0
  6. data/PostInstall.txt +6 -0
  7. data/README.rdoc +128 -0
  8. data/Rakefile +29 -0
  9. data/RuoteParticipants.txt +113 -0
  10. data/TODO.txt +27 -0
  11. data/bin/daemon-kit +18 -0
  12. data/config/website.yml +2 -0
  13. data/daemon-kit.gemspec +265 -0
  14. data/lib/daemon_kit/abstract_logger.rb +249 -0
  15. data/lib/daemon_kit/amqp.rb +39 -0
  16. data/lib/daemon_kit/application.rb +230 -0
  17. data/lib/daemon_kit/arguments.rb +165 -0
  18. data/lib/daemon_kit/commands/console.rb +38 -0
  19. data/lib/daemon_kit/commands/destroy.rb +10 -0
  20. data/lib/daemon_kit/commands/generate.rb +10 -0
  21. data/lib/daemon_kit/config.rb +113 -0
  22. data/lib/daemon_kit/console_daemon.rb +2 -0
  23. data/lib/daemon_kit/core_ext/configurable.rb +96 -0
  24. data/lib/daemon_kit/core_ext/string.rb +22 -0
  25. data/lib/daemon_kit/core_ext.rb +1 -0
  26. data/lib/daemon_kit/cron.rb +48 -0
  27. data/lib/daemon_kit/cucumber/world.rb +38 -0
  28. data/lib/daemon_kit/deployment/capistrano.rb +516 -0
  29. data/lib/daemon_kit/em.rb +43 -0
  30. data/lib/daemon_kit/error_handlers/base.rb +32 -0
  31. data/lib/daemon_kit/error_handlers/hoptoad.rb +180 -0
  32. data/lib/daemon_kit/exceptions.rb +15 -0
  33. data/lib/daemon_kit/generators/base.rb +60 -0
  34. data/lib/daemon_kit/generators.rb +67 -0
  35. data/lib/daemon_kit/initializer.rb +453 -0
  36. data/lib/daemon_kit/jabber.rb +171 -0
  37. data/lib/daemon_kit/nanite/agent.rb +77 -0
  38. data/lib/daemon_kit/nanite.rb +7 -0
  39. data/lib/daemon_kit/pid_file.rb +61 -0
  40. data/lib/daemon_kit/ruote_participants.rb +125 -0
  41. data/lib/daemon_kit/ruote_pseudo_participant.rb +68 -0
  42. data/lib/daemon_kit/ruote_workitem.rb +187 -0
  43. data/lib/daemon_kit/safety.rb +84 -0
  44. data/lib/daemon_kit/tasks/environment.rake +10 -0
  45. data/lib/daemon_kit/tasks/framework.rake +123 -0
  46. data/lib/daemon_kit/tasks/god.rake +62 -0
  47. data/lib/daemon_kit/tasks/log.rake +8 -0
  48. data/lib/daemon_kit/tasks/monit.rake +29 -0
  49. data/lib/daemon_kit/tasks.rb +2 -0
  50. data/lib/daemon_kit/vendor/thor-0.13.6/CHANGELOG.rdoc +89 -0
  51. data/lib/daemon_kit/vendor/thor-0.13.6/LICENSE +20 -0
  52. data/lib/daemon_kit/vendor/thor-0.13.6/README.rdoc +297 -0
  53. data/lib/daemon_kit/vendor/thor-0.13.6/Thorfile +69 -0
  54. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/create_file.rb +103 -0
  55. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/directory.rb +91 -0
  56. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/empty_directory.rb +134 -0
  57. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/file_manipulation.rb +223 -0
  58. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/inject_into_file.rb +104 -0
  59. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions.rb +296 -0
  60. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/base.rb +540 -0
  61. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/file_binary_read.rb +9 -0
  62. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/hash_with_indifferent_access.rb +75 -0
  63. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/ordered_hash.rb +100 -0
  64. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/error.rb +30 -0
  65. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/group.rb +271 -0
  66. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/invocation.rb +180 -0
  67. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/argument.rb +67 -0
  68. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/arguments.rb +150 -0
  69. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/option.rb +128 -0
  70. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/options.rb +169 -0
  71. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser.rb +4 -0
  72. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/rake_compat.rb +66 -0
  73. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/runner.rb +314 -0
  74. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/basic.rb +239 -0
  75. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/color.rb +108 -0
  76. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell.rb +83 -0
  77. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/task.rb +102 -0
  78. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/util.rb +224 -0
  79. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/version.rb +3 -0
  80. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor.rb +244 -0
  81. data/lib/daemon_kit/xmpp.rb +100 -0
  82. data/lib/daemon_kit.rb +59 -0
  83. data/lib/generators/daemon_kit/amqp/USAGE +5 -0
  84. data/lib/generators/daemon_kit/amqp/amqp_generator.rb +24 -0
  85. data/lib/generators/daemon_kit/amqp/templates/config/amqp.yml +28 -0
  86. data/lib/generators/daemon_kit/amqp/templates/config/pre-daemonize/amqp.rb +7 -0
  87. data/lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb +37 -0
  88. data/lib/generators/daemon_kit/app/USAGE +7 -0
  89. data/lib/generators/daemon_kit/app/app_generator.rb +140 -0
  90. data/lib/generators/daemon_kit/app/templates/Gemfile +8 -0
  91. data/lib/generators/daemon_kit/app/templates/README.tt +58 -0
  92. data/lib/generators/daemon_kit/app/templates/Rakefile +6 -0
  93. data/lib/generators/daemon_kit/app/templates/bin/daemon.tt +7 -0
  94. data/lib/generators/daemon_kit/app/templates/config/arguments.rb +12 -0
  95. data/lib/generators/daemon_kit/app/templates/config/boot.rb +70 -0
  96. data/lib/generators/daemon_kit/app/templates/config/environment.rb.tt +26 -0
  97. data/lib/generators/daemon_kit/app/templates/config/environments/development.rb +2 -0
  98. data/lib/generators/daemon_kit/app/templates/config/environments/production.rb +5 -0
  99. data/lib/generators/daemon_kit/app/templates/config/environments/test.rb +2 -0
  100. data/lib/generators/daemon_kit/app/templates/config/post-daemonize/readme +5 -0
  101. data/lib/generators/daemon_kit/app/templates/config/pre-daemonize/readme +12 -0
  102. data/lib/generators/daemon_kit/app/templates/lib/%app_name%.rb +2 -0
  103. data/lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb +18 -0
  104. data/lib/generators/daemon_kit/app/templates/script/console +3 -0
  105. data/lib/generators/daemon_kit/app/templates/script/destroy +3 -0
  106. data/lib/generators/daemon_kit/app/templates/script/generate +3 -0
  107. data/lib/generators/daemon_kit/capistrano/capistrano_generator.rb +26 -0
  108. data/lib/generators/daemon_kit/capistrano/templates/Capfile +10 -0
  109. data/lib/generators/daemon_kit/capistrano/templates/USAGE +10 -0
  110. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/logrotate.erb +13 -0
  111. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt +6 -0
  112. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt +6 -0
  113. data/lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt +67 -0
  114. data/lib/generators/daemon_kit/capistrano/templates/config/environments/staging.rb +0 -0
  115. data/lib/generators/daemon_kit/cron/USAGE +5 -0
  116. data/lib/generators/daemon_kit/cron/cron_generator.rb +24 -0
  117. data/lib/generators/daemon_kit/cron/templates/config/pre-daemonize/cron.rb +11 -0
  118. data/lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb +43 -0
  119. data/lib/generators/daemon_kit/cucumber/USAGE +11 -0
  120. data/lib/generators/daemon_kit/cucumber/cucumber_generator.rb +45 -0
  121. data/lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb +2 -0
  122. data/lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory +0 -0
  123. data/lib/generators/daemon_kit/cucumber/templates/features/support/env.rb +7 -0
  124. data/lib/generators/daemon_kit/cucumber/templates/script/cucumber +7 -0
  125. data/lib/generators/daemon_kit/cucumber/templates/tasks/cucumber.rake +13 -0
  126. data/lib/generators/daemon_kit/nanite_agent/USAGE +5 -0
  127. data/lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb +29 -0
  128. data/lib/generators/daemon_kit/nanite_agent/templates/config/nanite.yml +35 -0
  129. data/lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize/nanite_agent.rb +6 -0
  130. data/lib/generators/daemon_kit/nanite_agent/templates/lib/actors/sample.rb +11 -0
  131. data/lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb +31 -0
  132. data/lib/generators/daemon_kit/rspec/USAGE +5 -0
  133. data/lib/generators/daemon_kit/rspec/rspec_generator.rb +20 -0
  134. data/lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb +11 -0
  135. data/lib/generators/daemon_kit/rspec/templates/spec/spec.opts +1 -0
  136. data/lib/generators/daemon_kit/rspec/templates/spec/spec_helper.rb +23 -0
  137. data/lib/generators/daemon_kit/rspec/templates/tasks/rspec.rake +19 -0
  138. data/lib/generators/daemon_kit/ruote/USAGE +5 -0
  139. data/lib/generators/daemon_kit/ruote/ruote_generator.rb +29 -0
  140. data/lib/generators/daemon_kit/ruote/templates/config/amqp.yml +30 -0
  141. data/lib/generators/daemon_kit/ruote/templates/config/pre-daemonize/ruote.rb +13 -0
  142. data/lib/generators/daemon_kit/ruote/templates/config/ruote.yml +23 -0
  143. data/lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb +4 -0
  144. data/lib/generators/daemon_kit/ruote/templates/lib/sample.rb +26 -0
  145. data/lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb +33 -0
  146. data/lib/generators/daemon_kit/test_unit/USAGE +5 -0
  147. data/lib/generators/daemon_kit/test_unit/templates/tasks/test_unit.rake +7 -0
  148. data/lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt +9 -0
  149. data/lib/generators/daemon_kit/test_unit/templates/test/test_helper.rb +6 -0
  150. data/lib/generators/daemon_kit/test_unit/test_unit_generator.rb +20 -0
  151. data/lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb +6 -0
  152. data/lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml +29 -0
  153. data/lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb +27 -0
  154. data/lib/generators/daemon_kit/xmpp/xmpp_generator.rb +24 -0
  155. data/script/console +10 -0
  156. data/script/destroy +14 -0
  157. data/script/generate +14 -0
  158. data/script/txt2html +71 -0
  159. data/spec/abstract_logger_spec.rb +126 -0
  160. data/spec/argument_spec.rb +70 -0
  161. data/spec/config_spec.rb +83 -0
  162. data/spec/configurable_spec.rb +56 -0
  163. data/spec/daemon_kit_spec.rb +7 -0
  164. data/spec/error_handlers_spec.rb +23 -0
  165. data/spec/fixtures/env.yml +15 -0
  166. data/spec/fixtures/noenv.yml +4 -0
  167. data/spec/initializer_spec.rb +26 -0
  168. data/spec/spec.opts +1 -0
  169. data/spec/spec_helper.rb +27 -0
  170. data/tasks/cucumber.rake +13 -0
  171. data/tasks/rspec.rake +21 -0
  172. data/tasks/tests.rake +6 -0
  173. data/templates/god/god.erb +69 -0
  174. data/templates/monit/monit.erb +14 -0
  175. data/test/test_amqp_generator.rb +48 -0
  176. data/test/test_cron_generator.rb +45 -0
  177. data/test/test_daemon-kit_generator.rb +84 -0
  178. data/test/test_daemon_kit_config.rb +28 -0
  179. data/test/test_deploy_capistrano_generator.rb +48 -0
  180. data/test/test_generator_helper.rb +29 -0
  181. data/test/test_helper.rb +7 -0
  182. data/test/test_nanite_agent_generator.rb +49 -0
  183. data/test/test_ruote_generator.rb +51 -0
  184. data/test/test_test_unit_generator.rb +46 -0
  185. metadata +325 -0
@@ -0,0 +1,84 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+ class TestDaemonKitGenerator < Test::Unit::TestCase
4
+ include RubiGen::GeneratorTestHelper
5
+
6
+ attr_reader :daemon_name
7
+ def setup
8
+ bare_setup
9
+ @daemon_name = File.basename(File.expand_path(APP_ROOT))
10
+ end
11
+
12
+ def teardown
13
+ bare_teardown
14
+ end
15
+
16
+ # Some generator-related assertions:
17
+ # assert_generated_file(name, &block) # block passed the file contents
18
+ # assert_directory_exists(name)
19
+ # assert_generated_class(name, &block)
20
+ # assert_generated_module(name, &block)
21
+ # assert_generated_test_for(name, &block)
22
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
23
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
24
+ #
25
+ # Other helper methods are:
26
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
27
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
28
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
29
+
30
+ def test_generator_without_options
31
+ run_generator('daemon_kit', [APP_ROOT], sources)
32
+
33
+ assert_generated_file "README"
34
+ assert_generated_file "Rakefile"
35
+ assert_directory_exists "bin"
36
+ assert_generated_file "bin/#{daemon_name}"
37
+ assert_directory_exists "config"
38
+ assert_generated_file "config/arguments.rb"
39
+ assert_generated_file "config/boot.rb"
40
+ assert_generated_file "config/environment.rb"
41
+ assert_generated_file "config/environments/development.rb"
42
+ assert_generated_file "config/environments/test.rb"
43
+ assert_generated_file "config/environments/production.rb"
44
+ assert_directory_exists "config/pre-daemonize"
45
+ assert_generated_file "config/pre-daemonize/readme"
46
+ assert_directory_exists "config/post-daemonize"
47
+ assert_generated_file "config/post-daemonize/readme"
48
+ assert_directory_exists "lib"
49
+ assert_generated_file "lib/#{daemon_name}.rb"
50
+ assert_directory_exists "libexec"
51
+ assert_generated_file "libexec/#{daemon_name}-daemon.rb"
52
+ assert_directory_exists "log"
53
+ assert_directory_exists "script"
54
+ assert_generated_file "script/console"
55
+ assert_generated_file "script/destroy"
56
+ assert_generated_file "script/generate"
57
+ assert_directory_exists "spec"
58
+ assert_directory_exists "tasks"
59
+ assert_directory_exists "vendor"
60
+ assert_directory_exists "tmp"
61
+
62
+ assert !File.exists?("#{APP_ROOT}/Capfile"), 'Capfile generated, but should not be'
63
+ end
64
+
65
+ def test_generator_with_capistrano_deployer
66
+ run_generator('daemon_kit', [APP_ROOT, '-d capistrano'], sources)
67
+
68
+ assert_generated_file "Capfile"
69
+ assert_generated_file "config/deploy.rb"
70
+ end
71
+
72
+ private
73
+ def sources
74
+ [
75
+ RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path)),
76
+ RubiGen::PathSource.new(:app, File.join(File.dirname(__FILE__), "..", "daemon_generators")),
77
+ RubiGen::PathSource.new(:app, File.join(File.dirname(__FILE__), "..", "rubygems_generators"))
78
+ ]
79
+ end
80
+
81
+ def generator_path
82
+ "app_generators"
83
+ end
84
+ end
@@ -0,0 +1,28 @@
1
+ require File.join(File.dirname(__FILE__), "test_helper")
2
+
3
+ class TestDaemonKitConfig < Test::Unit::TestCase
4
+
5
+ def test_initialize_with_env_hash
6
+ data = {
7
+ 'test' => {
8
+ 'foo' => 'bar'
9
+ }
10
+ }
11
+
12
+ config = DaemonKit::Config.new( data )
13
+
14
+ assert_equal config['foo'], 'bar'
15
+ assert_equal config.foo, 'bar'
16
+ end
17
+
18
+ def test_initialize_without_env_hash
19
+ data = {
20
+ 'foo' => 'bar'
21
+ }
22
+
23
+ config = DaemonKit::Config.new( data )
24
+
25
+ assert_equal config['foo'], 'bar'
26
+ assert_equal config.foo, 'bar'
27
+ end
28
+ end
@@ -0,0 +1,48 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestDeployCapistranoGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ run_generator('deploy_capistrano', ['myapp'], sources)
31
+ assert_generated_file "Capfile"
32
+ assert_directory_exists "config"
33
+ assert_generated_file "config/deploy.rb"
34
+ assert_directory_exists "config/deploy"
35
+ assert_generated_file "config/deploy/staging.rb"
36
+ assert_generated_file "config/deploy/production.rb"
37
+ end
38
+
39
+ private
40
+ def sources
41
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
42
+ ]
43
+ end
44
+
45
+ def generator_path
46
+ "daemon_generators"
47
+ end
48
+ end
@@ -0,0 +1,29 @@
1
+ begin
2
+ require File.dirname(__FILE__) + '/test_helper'
3
+ rescue LoadError
4
+ require 'test/unit'
5
+ end
6
+ require 'fileutils'
7
+
8
+ # Must set before requiring generator libs.
9
+ TMP_ROOT = File.dirname(__FILE__) + "/tmp" unless defined?(TMP_ROOT)
10
+ PROJECT_NAME = "myproject" unless defined?(PROJECT_NAME)
11
+ app_root = File.join(TMP_ROOT, PROJECT_NAME)
12
+ if defined?(APP_ROOT)
13
+ APP_ROOT.replace(app_root)
14
+ else
15
+ APP_ROOT = app_root
16
+ end
17
+ if defined?(RAILS_ROOT)
18
+ RAILS_ROOT.replace(app_root)
19
+ else
20
+ RAILS_ROOT = app_root
21
+ end
22
+
23
+ begin
24
+ require 'rubigen'
25
+ rescue LoadError
26
+ require 'rubygems'
27
+ require 'rubigen'
28
+ end
29
+ require 'rubigen/helpers/generator_test_helper'
@@ -0,0 +1,7 @@
1
+ require 'test/unit'
2
+
3
+ DAEMON_ENV = "test"
4
+
5
+ require File.dirname(__FILE__) + '/../lib/daemon_kit'
6
+
7
+
@@ -0,0 +1,49 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestNaniteAgentGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('nanite_agent', [name], sources)
32
+ assert_directory_exists "lib/actors"
33
+ assert_generated_file "lib/actors/sample.rb"
34
+ assert_directory_exists "config"
35
+ assert_generated_file "config/nanite.yml"
36
+ assert_directory_exists "config/initializers"
37
+ assert_generated_file "config/initializers/myapp.rb"
38
+ end
39
+
40
+ private
41
+ def sources
42
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
43
+ ]
44
+ end
45
+
46
+ def generator_path
47
+ "daemon_generators"
48
+ end
49
+ end
@@ -0,0 +1,51 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestRuoteGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('ruote', [name], sources)
32
+ assert_directory_exists "config"
33
+ assert_generated_file "config/amqp.yml"
34
+ assert_generated_file "config/ruote.yml"
35
+ assert_directory_exists "config/initializers"
36
+ assert_generated_file "config/initializers/myapp.rb"
37
+
38
+ assert_generated_file "lib/myapp.rb"
39
+ assert_generated_file "lib/sample.rb"
40
+ end
41
+
42
+ private
43
+ def sources
44
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
45
+ ]
46
+ end
47
+
48
+ def generator_path
49
+ "daemon_generators"
50
+ end
51
+ end
@@ -0,0 +1,46 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestTestUnitGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('test_unit', [name], sources)
32
+ assert_directory_exists "test"
33
+ assert_generated_file "test/test_helper.rb"
34
+ assert_generated_file "test/myproject_test.rb"
35
+ end
36
+
37
+ private
38
+ def sources
39
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
40
+ ]
41
+ end
42
+
43
+ def generator_path
44
+ "daemon_generators"
45
+ end
46
+ end
metadata ADDED
@@ -0,0 +1,325 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: textgoeshere-daemon-kit
3
+ version: !ruby/object:Gem::Version
4
+ hash: 1765000962
5
+ prerelease: true
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 8rc3
10
+ version: 0.1.8rc3
11
+ platform: ruby
12
+ authors:
13
+ - kenneth.kalmer@gmail.com
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2010-06-16 00:00:00 +02:00
19
+ default_executable: daemon-kit
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: eventmachine
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 59
30
+ segments:
31
+ - 0
32
+ - 12
33
+ - 10
34
+ version: 0.12.10
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: rspec
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 0
48
+ version: "0"
49
+ type: :development
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: cucumber
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ hash: 3
60
+ segments:
61
+ - 0
62
+ version: "0"
63
+ type: :development
64
+ version_requirements: *id003
65
+ description: daemon-kit aims to simplify creating Ruby daemons by providing a sound application skeleton (through a generator), task specific generators (jabber bot, etc) and robust environment management code.
66
+ email: kenneth.kalmer@gmail.com
67
+ executables:
68
+ - daemon-kit
69
+ extensions: []
70
+
71
+ extra_rdoc_files:
72
+ - Configuration.txt
73
+ - Deployment.txt
74
+ - History.txt
75
+ - Logging.txt
76
+ - PostInstall.txt
77
+ - README.rdoc
78
+ - RuoteParticipants.txt
79
+ - TODO.txt
80
+ files:
81
+ - .gitignore
82
+ - Configuration.txt
83
+ - Deployment.txt
84
+ - History.txt
85
+ - Logging.txt
86
+ - PostInstall.txt
87
+ - README.rdoc
88
+ - Rakefile
89
+ - RuoteParticipants.txt
90
+ - TODO.txt
91
+ - bin/daemon-kit
92
+ - config/website.yml
93
+ - daemon-kit.gemspec
94
+ - lib/daemon_kit.rb
95
+ - lib/daemon_kit/abstract_logger.rb
96
+ - lib/daemon_kit/amqp.rb
97
+ - lib/daemon_kit/application.rb
98
+ - lib/daemon_kit/arguments.rb
99
+ - lib/daemon_kit/commands/console.rb
100
+ - lib/daemon_kit/commands/destroy.rb
101
+ - lib/daemon_kit/commands/generate.rb
102
+ - lib/daemon_kit/config.rb
103
+ - lib/daemon_kit/console_daemon.rb
104
+ - lib/daemon_kit/core_ext.rb
105
+ - lib/daemon_kit/core_ext/configurable.rb
106
+ - lib/daemon_kit/core_ext/string.rb
107
+ - lib/daemon_kit/cron.rb
108
+ - lib/daemon_kit/cucumber/world.rb
109
+ - lib/daemon_kit/deployment/capistrano.rb
110
+ - lib/daemon_kit/em.rb
111
+ - lib/daemon_kit/error_handlers/base.rb
112
+ - lib/daemon_kit/error_handlers/hoptoad.rb
113
+ - lib/daemon_kit/exceptions.rb
114
+ - lib/daemon_kit/generators.rb
115
+ - lib/daemon_kit/generators/base.rb
116
+ - lib/daemon_kit/initializer.rb
117
+ - lib/daemon_kit/jabber.rb
118
+ - lib/daemon_kit/nanite.rb
119
+ - lib/daemon_kit/nanite/agent.rb
120
+ - lib/daemon_kit/pid_file.rb
121
+ - lib/daemon_kit/ruote_participants.rb
122
+ - lib/daemon_kit/ruote_pseudo_participant.rb
123
+ - lib/daemon_kit/ruote_workitem.rb
124
+ - lib/daemon_kit/safety.rb
125
+ - lib/daemon_kit/tasks.rb
126
+ - lib/daemon_kit/tasks/environment.rake
127
+ - lib/daemon_kit/tasks/framework.rake
128
+ - lib/daemon_kit/tasks/god.rake
129
+ - lib/daemon_kit/tasks/log.rake
130
+ - lib/daemon_kit/tasks/monit.rake
131
+ - lib/daemon_kit/vendor/thor-0.13.6/CHANGELOG.rdoc
132
+ - lib/daemon_kit/vendor/thor-0.13.6/LICENSE
133
+ - lib/daemon_kit/vendor/thor-0.13.6/README.rdoc
134
+ - lib/daemon_kit/vendor/thor-0.13.6/Thorfile
135
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor.rb
136
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions.rb
137
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/create_file.rb
138
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/directory.rb
139
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/empty_directory.rb
140
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/file_manipulation.rb
141
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/inject_into_file.rb
142
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/base.rb
143
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/file_binary_read.rb
144
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/hash_with_indifferent_access.rb
145
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/ordered_hash.rb
146
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/error.rb
147
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/group.rb
148
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/invocation.rb
149
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser.rb
150
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/argument.rb
151
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/arguments.rb
152
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/option.rb
153
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/options.rb
154
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/rake_compat.rb
155
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/runner.rb
156
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell.rb
157
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/basic.rb
158
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/color.rb
159
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/task.rb
160
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/util.rb
161
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/version.rb
162
+ - lib/daemon_kit/xmpp.rb
163
+ - lib/generators/daemon_kit/amqp/USAGE
164
+ - lib/generators/daemon_kit/amqp/amqp_generator.rb
165
+ - lib/generators/daemon_kit/amqp/templates/config/amqp.yml
166
+ - lib/generators/daemon_kit/amqp/templates/config/pre-daemonize/amqp.rb
167
+ - lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb
168
+ - lib/generators/daemon_kit/app/USAGE
169
+ - lib/generators/daemon_kit/app/app_generator.rb
170
+ - lib/generators/daemon_kit/app/templates/Gemfile
171
+ - lib/generators/daemon_kit/app/templates/README.tt
172
+ - lib/generators/daemon_kit/app/templates/Rakefile
173
+ - lib/generators/daemon_kit/app/templates/bin/daemon.tt
174
+ - lib/generators/daemon_kit/app/templates/config/arguments.rb
175
+ - lib/generators/daemon_kit/app/templates/config/boot.rb
176
+ - lib/generators/daemon_kit/app/templates/config/environment.rb.tt
177
+ - lib/generators/daemon_kit/app/templates/config/environments/development.rb
178
+ - lib/generators/daemon_kit/app/templates/config/environments/production.rb
179
+ - lib/generators/daemon_kit/app/templates/config/environments/test.rb
180
+ - lib/generators/daemon_kit/app/templates/config/post-daemonize/readme
181
+ - lib/generators/daemon_kit/app/templates/config/pre-daemonize/readme
182
+ - lib/generators/daemon_kit/app/templates/lib/%app_name%.rb
183
+ - lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb
184
+ - lib/generators/daemon_kit/app/templates/script/console
185
+ - lib/generators/daemon_kit/app/templates/script/destroy
186
+ - lib/generators/daemon_kit/app/templates/script/generate
187
+ - lib/generators/daemon_kit/capistrano/capistrano_generator.rb
188
+ - lib/generators/daemon_kit/capistrano/templates/Capfile
189
+ - lib/generators/daemon_kit/capistrano/templates/USAGE
190
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt
191
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/logrotate.erb
192
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt
193
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt
194
+ - lib/generators/daemon_kit/capistrano/templates/config/environments/staging.rb
195
+ - lib/generators/daemon_kit/cron/USAGE
196
+ - lib/generators/daemon_kit/cron/cron_generator.rb
197
+ - lib/generators/daemon_kit/cron/templates/config/pre-daemonize/cron.rb
198
+ - lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb
199
+ - lib/generators/daemon_kit/cucumber/USAGE
200
+ - lib/generators/daemon_kit/cucumber/cucumber_generator.rb
201
+ - lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb
202
+ - lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory
203
+ - lib/generators/daemon_kit/cucumber/templates/features/support/env.rb
204
+ - lib/generators/daemon_kit/cucumber/templates/script/cucumber
205
+ - lib/generators/daemon_kit/cucumber/templates/tasks/cucumber.rake
206
+ - lib/generators/daemon_kit/nanite_agent/USAGE
207
+ - lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb
208
+ - lib/generators/daemon_kit/nanite_agent/templates/config/nanite.yml
209
+ - lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize/nanite_agent.rb
210
+ - lib/generators/daemon_kit/nanite_agent/templates/lib/actors/sample.rb
211
+ - lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb
212
+ - lib/generators/daemon_kit/rspec/USAGE
213
+ - lib/generators/daemon_kit/rspec/rspec_generator.rb
214
+ - lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb
215
+ - lib/generators/daemon_kit/rspec/templates/spec/spec.opts
216
+ - lib/generators/daemon_kit/rspec/templates/spec/spec_helper.rb
217
+ - lib/generators/daemon_kit/rspec/templates/tasks/rspec.rake
218
+ - lib/generators/daemon_kit/ruote/USAGE
219
+ - lib/generators/daemon_kit/ruote/ruote_generator.rb
220
+ - lib/generators/daemon_kit/ruote/templates/config/amqp.yml
221
+ - lib/generators/daemon_kit/ruote/templates/config/pre-daemonize/ruote.rb
222
+ - lib/generators/daemon_kit/ruote/templates/config/ruote.yml
223
+ - lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb
224
+ - lib/generators/daemon_kit/ruote/templates/lib/sample.rb
225
+ - lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb
226
+ - lib/generators/daemon_kit/test_unit/USAGE
227
+ - lib/generators/daemon_kit/test_unit/templates/tasks/test_unit.rake
228
+ - lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt
229
+ - lib/generators/daemon_kit/test_unit/templates/test/test_helper.rb
230
+ - lib/generators/daemon_kit/test_unit/test_unit_generator.rb
231
+ - lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb
232
+ - lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml
233
+ - lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb
234
+ - lib/generators/daemon_kit/xmpp/xmpp_generator.rb
235
+ - script/console
236
+ - script/destroy
237
+ - script/generate
238
+ - script/txt2html
239
+ - spec/abstract_logger_spec.rb
240
+ - spec/argument_spec.rb
241
+ - spec/config_spec.rb
242
+ - spec/configurable_spec.rb
243
+ - spec/daemon_kit_spec.rb
244
+ - spec/error_handlers_spec.rb
245
+ - spec/fixtures/env.yml
246
+ - spec/fixtures/noenv.yml
247
+ - spec/initializer_spec.rb
248
+ - spec/spec.opts
249
+ - spec/spec_helper.rb
250
+ - tasks/cucumber.rake
251
+ - tasks/rspec.rake
252
+ - tasks/tests.rake
253
+ - templates/god/god.erb
254
+ - templates/monit/monit.erb
255
+ - test/test_amqp_generator.rb
256
+ - test/test_cron_generator.rb
257
+ - test/test_daemon-kit_generator.rb
258
+ - test/test_daemon_kit_config.rb
259
+ - test/test_deploy_capistrano_generator.rb
260
+ - test/test_generator_helper.rb
261
+ - test/test_helper.rb
262
+ - test/test_nanite_agent_generator.rb
263
+ - test/test_ruote_generator.rb
264
+ - test/test_test_unit_generator.rb
265
+ has_rdoc: true
266
+ homepage: http://github.com/kennethkalmer/daemon-kit
267
+ licenses: []
268
+
269
+ post_install_message: |+
270
+
271
+ For more information on daemon-kit, see http://kit.rubyforge.org/daemon-kit
272
+
273
+ To get started quickly run 'daemon-kit' without any arguments
274
+
275
+
276
+ rdoc_options:
277
+ - --charset=UTF-8
278
+ require_paths:
279
+ - lib
280
+ required_ruby_version: !ruby/object:Gem::Requirement
281
+ none: false
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ hash: 3
286
+ segments:
287
+ - 0
288
+ version: "0"
289
+ required_rubygems_version: !ruby/object:Gem::Requirement
290
+ none: false
291
+ requirements:
292
+ - - ">"
293
+ - !ruby/object:Gem::Version
294
+ hash: 25
295
+ segments:
296
+ - 1
297
+ - 3
298
+ - 1
299
+ version: 1.3.1
300
+ requirements: []
301
+
302
+ rubyforge_project:
303
+ rubygems_version: 1.3.7
304
+ signing_key:
305
+ specification_version: 3
306
+ summary: Build of opinionated framework for Ruby daemons
307
+ test_files:
308
+ - spec/config_spec.rb
309
+ - spec/configurable_spec.rb
310
+ - spec/error_handlers_spec.rb
311
+ - spec/abstract_logger_spec.rb
312
+ - spec/spec_helper.rb
313
+ - spec/initializer_spec.rb
314
+ - spec/argument_spec.rb
315
+ - spec/daemon_kit_spec.rb
316
+ - test/test_nanite_agent_generator.rb
317
+ - test/test_deploy_capistrano_generator.rb
318
+ - test/test_ruote_generator.rb
319
+ - test/test_test_unit_generator.rb
320
+ - test/test_daemon-kit_generator.rb
321
+ - test/test_generator_helper.rb
322
+ - test/test_amqp_generator.rb
323
+ - test/test_helper.rb
324
+ - test/test_cron_generator.rb
325
+ - test/test_daemon_kit_config.rb