daemon-kit 0.1.7.12 → 0.1.8pre
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/History.txt +7 -0
- data/Manifest.txt +4 -0
- data/README.rdoc +11 -9
- data/Rakefile +0 -1
- data/TODO.txt +1 -2
- data/bin/daemon-kit +11 -11
- data/daemon-kit.gemspec +109 -78
- data/lib/daemon_kit.rb +7 -10
- data/lib/daemon_kit/abstract_logger.rb +22 -14
- data/lib/daemon_kit/application.rb +0 -1
- data/lib/daemon_kit/arguments.rb +1 -6
- data/lib/daemon_kit/commands/destroy.rb +10 -0
- data/lib/daemon_kit/commands/generate.rb +10 -0
- data/lib/daemon_kit/config.rb +7 -2
- data/lib/daemon_kit/generators.rb +67 -0
- data/lib/daemon_kit/generators/base.rb +60 -0
- data/lib/daemon_kit/initializer.rb +1 -1
- data/lib/daemon_kit/jabber.rb +1 -0
- data/lib/daemon_kit/tasks/framework.rake +6 -1
- data/lib/daemon_kit/vendor/thor-0.12.3/CHANGELOG.rdoc +80 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/LICENSE +20 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/README.rdoc +234 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/Thorfile +64 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor.rb +242 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions.rb +274 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/create_file.rb +103 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/directory.rb +91 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/empty_directory.rb +134 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/file_manipulation.rb +223 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/inject_into_file.rb +101 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/base.rb +515 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/file_binary_read.rb +9 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/hash_with_indifferent_access.rb +75 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/ordered_hash.rb +100 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/error.rb +27 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/group.rb +271 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/invocation.rb +178 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser.rb +4 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/argument.rb +67 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/arguments.rb +145 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/option.rb +132 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/options.rb +142 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/rake_compat.rb +66 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/runner.rb +303 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell.rb +78 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell/basic.rb +239 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell/color.rb +108 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/task.rb +111 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/util.rb +233 -0
- data/lib/daemon_kit/vendor/thor-0.12.3/lib/thor/version.rb +3 -0
- data/lib/daemon_kit/xmpp.rb +75 -6
- data/{daemon_generators → lib/generators/daemon_kit}/amqp/USAGE +0 -0
- data/lib/generators/daemon_kit/amqp/amqp_generator.rb +24 -0
- data/{daemon_generators → lib/generators/daemon_kit}/amqp/templates/config/amqp.yml +0 -0
- data/{daemon_generators/amqp/templates/config/initializers → lib/generators/daemon_kit/amqp/templates/config/pre-daemonize}/amqp.rb +0 -0
- data/{daemon_generators/amqp/templates/libexec/daemon.rb → lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb} +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/USAGE +0 -0
- data/lib/generators/daemon_kit/app/app_generator.rb +140 -0
- data/lib/generators/daemon_kit/app/templates/Gemfile +8 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/README +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/Rakefile +0 -0
- data/lib/generators/daemon_kit/app/templates/bin/daemon.tt +7 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/arguments.rb +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/boot.rb +10 -3
- data/{app_generators/daemon_kit/templates/config/environment.rb → lib/generators/daemon_kit/app/templates/config/environment.rb.tt} +1 -1
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/environments/development.rb +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/environments/production.rb +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/environments/test.rb +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/post-daemonize/readme +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/config/pre-daemonize/readme +0 -0
- data/{app_generators/daemon_kit/templates/lib/daemon.rb → lib/generators/daemon_kit/app/templates/lib/%app_name%.rb} +0 -0
- data/{app_generators/daemon_kit/templates/libexec/daemon.erb → lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb} +0 -0
- data/{app_generators/daemon_kit → lib/generators/daemon_kit/app}/templates/script/console +0 -0
- data/lib/generators/daemon_kit/app/templates/script/destroy +2 -0
- data/lib/generators/daemon_kit/app/templates/script/generate +2 -0
- data/lib/generators/daemon_kit/capistrano/capistrano_generator.rb +21 -0
- data/{daemon_generators/deploy_capistrano → lib/generators/daemon_kit/capistrano}/templates/Capfile +0 -0
- data/{daemon_generators/deploy_capistrano → lib/generators/daemon_kit/capistrano}/templates/USAGE +0 -0
- data/{daemon_generators/deploy_capistrano/templates/config/deploy.rb → lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt} +1 -1
- data/lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt +6 -0
- data/lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt +6 -0
- data/{daemon_generators/deploy_capistrano → lib/generators/daemon_kit/capistrano}/templates/config/environments/staging.rb +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/cron/USAGE +0 -0
- data/lib/generators/daemon_kit/cron/cron_generator.rb +24 -0
- data/{daemon_generators/cron/templates/config/initializers → lib/generators/daemon_kit/cron/templates/config/pre-daemonize}/cron.rb +0 -0
- data/{daemon_generators/cron/templates/libexec/daemon.rb → lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb} +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/cucumber/USAGE +0 -0
- data/lib/generators/daemon_kit/cucumber/cucumber_generator.rb +45 -0
- data/{daemon_generators/cucumber/templates/cucumber_environment.rb → lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb} +0 -0
- data/lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory +0 -0
- data/{daemon_generators/cucumber/templates → lib/generators/daemon_kit/cucumber/templates/features/support}/env.rb +0 -0
- data/{daemon_generators/cucumber/templates → lib/generators/daemon_kit/cucumber/templates/script}/cucumber +1 -2
- data/{daemon_generators/cucumber/templates → lib/generators/daemon_kit/cucumber/templates/tasks}/cucumber.rake +0 -0
- data/{daemon_generators/jabber → lib/generators/daemon_kit/nanite_agent}/USAGE +0 -0
- data/lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb +29 -0
- data/{daemon_generators → lib/generators/daemon_kit}/nanite_agent/templates/config/nanite.yml +0 -0
- data/{daemon_generators/nanite_agent/templates/config/initializers → lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize}/nanite_agent.rb +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/nanite_agent/templates/lib/actors/sample.rb +0 -0
- data/{daemon_generators/nanite_agent/templates/libexec/daemon.rb → lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb} +0 -0
- data/{daemon_generators/nanite_agent → lib/generators/daemon_kit/rspec}/USAGE +0 -0
- data/lib/generators/daemon_kit/rspec/rspec_generator.rb +20 -0
- data/{daemon_generators/rspec/templates/spec.rb → lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb} +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/rspec/templates/spec/spec.opts +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/rspec/templates/spec/spec_helper.rb +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/rspec/templates/tasks/rspec.rake +0 -0
- data/{daemon_generators/rspec → lib/generators/daemon_kit/ruote}/USAGE +0 -0
- data/lib/generators/daemon_kit/ruote/ruote_generator.rb +29 -0
- data/{daemon_generators → lib/generators/daemon_kit}/ruote/templates/config/amqp.yml +0 -0
- data/{daemon_generators/ruote/templates/config/initializers → lib/generators/daemon_kit/ruote/templates/config/pre-daemonize}/ruote.rb +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/ruote/templates/config/ruote.yml +0 -0
- data/{daemon_generators/ruote/templates/lib/daemon.rb → lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb} +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/ruote/templates/lib/sample.rb +0 -0
- data/{daemon_generators/ruote/templates/libexec/daemon.rb → lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb} +0 -0
- data/{daemon_generators/ruote → lib/generators/daemon_kit/test_unit}/USAGE +0 -0
- data/{daemon_generators → lib/generators/daemon_kit}/test_unit/templates/tasks/test_unit.rake +0 -0
- data/{daemon_generators/test_unit/templates/test/test.rb → lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt} +1 -1
- data/{daemon_generators → lib/generators/daemon_kit}/test_unit/templates/test/test_helper.rb +0 -0
- data/lib/generators/daemon_kit/test_unit/test_unit_generator.rb +20 -0
- data/lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb +6 -0
- data/{daemon_generators/jabber/templates/config/jabber.yml → lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml} +5 -2
- data/lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb +27 -0
- data/lib/generators/daemon_kit/xmpp/xmpp_generator.rb +24 -0
- data/spec/argument_spec.rb +1 -1
- data/spec/config_spec.rb +7 -3
- metadata +110 -86
- data/app_generators/daemon_kit/daemon_kit_generator.rb +0 -178
- data/app_generators/daemon_kit/templates/bin/daemon.erb +0 -7
- data/app_generators/daemon_kit/templates/script/destroy +0 -14
- data/app_generators/daemon_kit/templates/script/generate +0 -14
- data/daemon_generators/amqp/amqp_generator.rb +0 -65
- data/daemon_generators/cron/cron_generator.rb +0 -64
- data/daemon_generators/cucumber/cucumber_generator.rb +0 -38
- data/daemon_generators/deploy_capistrano/deploy_capistrano_generator.rb +0 -35
- data/daemon_generators/deploy_capistrano/templates/config/deploy/production.rb +0 -6
- data/daemon_generators/deploy_capistrano/templates/config/deploy/staging.rb +0 -6
- data/daemon_generators/jabber/jabber_generator.rb +0 -65
- data/daemon_generators/jabber/templates/config/initializers/jabber.rb +0 -7
- data/daemon_generators/jabber/templates/libexec/daemon.rb +0 -27
- data/daemon_generators/nanite_agent/nanite_agent_generator.rb +0 -68
- data/daemon_generators/rspec/rspec_generator.rb +0 -55
- data/daemon_generators/ruote/ruote_generator.rb +0 -67
- data/daemon_generators/test_unit/USAGE +0 -5
- data/daemon_generators/test_unit/test_unit_generator.rb +0 -51
- data/test/test_jabber_generator.rb +0 -49
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Change this file to be a wrapper around your daemon code.
|
|
2
|
+
|
|
3
|
+
# Do your post daemonization configuration here
|
|
4
|
+
# At minimum you need just the first line (without the block), or a lot
|
|
5
|
+
# of strange things might start happening...
|
|
6
|
+
DaemonKit::Application.running! do |config|
|
|
7
|
+
# Trap signals with blocks or procs
|
|
8
|
+
# config.trap( 'INT' ) do
|
|
9
|
+
# # do something clever
|
|
10
|
+
# end
|
|
11
|
+
# config.trap( 'TERM', Proc.new { puts 'Going down' } )
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
DaemonKit::XMPP.run do
|
|
16
|
+
when_ready { DaemonKit.logger.info "Connected as #{jid}" }
|
|
17
|
+
|
|
18
|
+
# Auto approve subscription requests
|
|
19
|
+
subscription :request? do |s|
|
|
20
|
+
write_to_stream s.approve!
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Echo back what was said
|
|
24
|
+
message :chat?, :body do |m|
|
|
25
|
+
write_to_stream m.reply
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
module DaemonKit
|
|
2
|
+
module Generators
|
|
3
|
+
class XmppGenerator < Base
|
|
4
|
+
|
|
5
|
+
def update_gemfile
|
|
6
|
+
append_file 'Gemfile', "gem 'blather'"
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def create_config
|
|
10
|
+
directory 'config'
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def create_daemon
|
|
14
|
+
directory 'libexec'
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
protected
|
|
18
|
+
|
|
19
|
+
def self.source_root
|
|
20
|
+
File.expand_path( File.join( File.dirname(__FILE__), 'templates') )
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
data/spec/argument_spec.rb
CHANGED
|
@@ -49,7 +49,7 @@ describe DaemonKit::Arguments do
|
|
|
49
49
|
end
|
|
50
50
|
|
|
51
51
|
it "should handle different ordered configurations easily" do
|
|
52
|
-
argv = [ '--
|
|
52
|
+
argv = [ '--pidfile', '/tmp/piddy', '--log', '/tmp/loggy' ]
|
|
53
53
|
res = DaemonKit::Arguments.configuration( argv )
|
|
54
54
|
|
|
55
55
|
# No additional args
|
data/spec/config_spec.rb
CHANGED
|
@@ -4,7 +4,7 @@ describe DaemonKit::Config do
|
|
|
4
4
|
|
|
5
5
|
describe "working with config data" do
|
|
6
6
|
before(:each) do
|
|
7
|
-
@config = DaemonKit::Config.new('foo' => 'bar', 'nes' => { 'ted' => 'value' })
|
|
7
|
+
@config = DaemonKit::Config.new('foo' => 'bar', 'nes' => { 'ted' => 'value' }, 'dash-ed' => 'keys')
|
|
8
8
|
end
|
|
9
9
|
|
|
10
10
|
it "should have string key access to values" do
|
|
@@ -24,11 +24,15 @@ describe DaemonKit::Config do
|
|
|
24
24
|
end
|
|
25
25
|
|
|
26
26
|
it "should return the config as a hash" do
|
|
27
|
-
@config.to_h.should == { 'foo' => 'bar', 'nes' => { 'ted' => 'value' } }
|
|
27
|
+
@config.to_h.should == { 'foo' => 'bar', 'nes' => { 'ted' => 'value' }, 'dash-ed' => 'keys' }
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
it "should be able to symbolize keys in returned hash" do
|
|
31
|
-
@config.to_h(true).should == { :foo => 'bar', :nes => { :ted => 'value' } }
|
|
31
|
+
@config.to_h(true).should == { :foo => 'bar', :nes => { :ted => 'value' }, :'dash-ed' => 'keys' }
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
it "should be able to handle dashed keys via accessors" do
|
|
35
|
+
@config.dash_ed.should == 'keys'
|
|
32
36
|
end
|
|
33
37
|
end
|
|
34
38
|
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: daemon-kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.8pre
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- kenneth.kalmer@gmail.com
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date:
|
|
12
|
+
date: 2010-02-05 00:00:00 +02:00
|
|
13
13
|
default_executable: daemon-kit
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
@@ -22,16 +22,6 @@ dependencies:
|
|
|
22
22
|
- !ruby/object:Gem::Version
|
|
23
23
|
version: 0.12.8
|
|
24
24
|
version:
|
|
25
|
-
- !ruby/object:Gem::Dependency
|
|
26
|
-
name: rubigen
|
|
27
|
-
type: :runtime
|
|
28
|
-
version_requirement:
|
|
29
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
30
|
-
requirements:
|
|
31
|
-
- - ">="
|
|
32
|
-
- !ruby/object:Gem::Version
|
|
33
|
-
version: 1.5.2
|
|
34
|
-
version:
|
|
35
25
|
- !ruby/object:Gem::Dependency
|
|
36
26
|
name: rspec
|
|
37
27
|
type: :development
|
|
@@ -80,85 +70,17 @@ files:
|
|
|
80
70
|
- Rakefile
|
|
81
71
|
- RuoteParticipants.txt
|
|
82
72
|
- TODO.txt
|
|
83
|
-
- app_generators/daemon_kit/USAGE
|
|
84
|
-
- app_generators/daemon_kit/daemon_kit_generator.rb
|
|
85
|
-
- app_generators/daemon_kit/templates/README
|
|
86
|
-
- app_generators/daemon_kit/templates/Rakefile
|
|
87
|
-
- app_generators/daemon_kit/templates/bin/daemon.erb
|
|
88
|
-
- app_generators/daemon_kit/templates/config/arguments.rb
|
|
89
|
-
- app_generators/daemon_kit/templates/config/boot.rb
|
|
90
|
-
- app_generators/daemon_kit/templates/config/environment.rb
|
|
91
|
-
- app_generators/daemon_kit/templates/config/environments/development.rb
|
|
92
|
-
- app_generators/daemon_kit/templates/config/environments/production.rb
|
|
93
|
-
- app_generators/daemon_kit/templates/config/environments/test.rb
|
|
94
|
-
- app_generators/daemon_kit/templates/config/post-daemonize/readme
|
|
95
|
-
- app_generators/daemon_kit/templates/config/pre-daemonize/readme
|
|
96
|
-
- app_generators/daemon_kit/templates/lib/daemon.rb
|
|
97
|
-
- app_generators/daemon_kit/templates/libexec/daemon.erb
|
|
98
|
-
- app_generators/daemon_kit/templates/script/console
|
|
99
|
-
- app_generators/daemon_kit/templates/script/destroy
|
|
100
|
-
- app_generators/daemon_kit/templates/script/generate
|
|
101
73
|
- bin/daemon-kit
|
|
102
74
|
- config/website.yml
|
|
103
75
|
- daemon-kit.gemspec
|
|
104
|
-
- daemon_generators/amqp/USAGE
|
|
105
|
-
- daemon_generators/amqp/amqp_generator.rb
|
|
106
|
-
- daemon_generators/amqp/templates/config/amqp.yml
|
|
107
|
-
- daemon_generators/amqp/templates/config/initializers/amqp.rb
|
|
108
|
-
- daemon_generators/amqp/templates/libexec/daemon.rb
|
|
109
|
-
- daemon_generators/cron/USAGE
|
|
110
|
-
- daemon_generators/cron/cron_generator.rb
|
|
111
|
-
- daemon_generators/cron/templates/config/initializers/cron.rb
|
|
112
|
-
- daemon_generators/cron/templates/libexec/daemon.rb
|
|
113
|
-
- daemon_generators/cucumber/USAGE
|
|
114
|
-
- daemon_generators/cucumber/cucumber_generator.rb
|
|
115
|
-
- daemon_generators/cucumber/templates/cucumber
|
|
116
|
-
- daemon_generators/cucumber/templates/cucumber.rake
|
|
117
|
-
- daemon_generators/cucumber/templates/cucumber_environment.rb
|
|
118
|
-
- daemon_generators/cucumber/templates/env.rb
|
|
119
|
-
- daemon_generators/deploy_capistrano/deploy_capistrano_generator.rb
|
|
120
|
-
- daemon_generators/deploy_capistrano/templates/Capfile
|
|
121
|
-
- daemon_generators/deploy_capistrano/templates/USAGE
|
|
122
|
-
- daemon_generators/deploy_capistrano/templates/config/deploy.rb
|
|
123
|
-
- daemon_generators/deploy_capistrano/templates/config/deploy/production.rb
|
|
124
|
-
- daemon_generators/deploy_capistrano/templates/config/deploy/staging.rb
|
|
125
|
-
- daemon_generators/deploy_capistrano/templates/config/environments/staging.rb
|
|
126
|
-
- daemon_generators/jabber/USAGE
|
|
127
|
-
- daemon_generators/jabber/jabber_generator.rb
|
|
128
|
-
- daemon_generators/jabber/templates/config/initializers/jabber.rb
|
|
129
|
-
- daemon_generators/jabber/templates/config/jabber.yml
|
|
130
|
-
- daemon_generators/jabber/templates/libexec/daemon.rb
|
|
131
|
-
- daemon_generators/nanite_agent/USAGE
|
|
132
|
-
- daemon_generators/nanite_agent/nanite_agent_generator.rb
|
|
133
|
-
- daemon_generators/nanite_agent/templates/config/initializers/nanite_agent.rb
|
|
134
|
-
- daemon_generators/nanite_agent/templates/config/nanite.yml
|
|
135
|
-
- daemon_generators/nanite_agent/templates/lib/actors/sample.rb
|
|
136
|
-
- daemon_generators/nanite_agent/templates/libexec/daemon.rb
|
|
137
|
-
- daemon_generators/rspec/USAGE
|
|
138
|
-
- daemon_generators/rspec/rspec_generator.rb
|
|
139
|
-
- daemon_generators/rspec/templates/spec.rb
|
|
140
|
-
- daemon_generators/rspec/templates/spec/spec.opts
|
|
141
|
-
- daemon_generators/rspec/templates/spec/spec_helper.rb
|
|
142
|
-
- daemon_generators/rspec/templates/tasks/rspec.rake
|
|
143
|
-
- daemon_generators/ruote/USAGE
|
|
144
|
-
- daemon_generators/ruote/ruote_generator.rb
|
|
145
|
-
- daemon_generators/ruote/templates/config/amqp.yml
|
|
146
|
-
- daemon_generators/ruote/templates/config/initializers/ruote.rb
|
|
147
|
-
- daemon_generators/ruote/templates/config/ruote.yml
|
|
148
|
-
- daemon_generators/ruote/templates/lib/daemon.rb
|
|
149
|
-
- daemon_generators/ruote/templates/lib/sample.rb
|
|
150
|
-
- daemon_generators/ruote/templates/libexec/daemon.rb
|
|
151
|
-
- daemon_generators/test_unit/USAGE
|
|
152
|
-
- daemon_generators/test_unit/templates/tasks/test_unit.rake
|
|
153
|
-
- daemon_generators/test_unit/templates/test/test.rb
|
|
154
|
-
- daemon_generators/test_unit/templates/test/test_helper.rb
|
|
155
|
-
- daemon_generators/test_unit/test_unit_generator.rb
|
|
156
76
|
- lib/daemon_kit.rb
|
|
157
77
|
- lib/daemon_kit/abstract_logger.rb
|
|
158
78
|
- lib/daemon_kit/amqp.rb
|
|
159
79
|
- lib/daemon_kit/application.rb
|
|
160
80
|
- lib/daemon_kit/arguments.rb
|
|
161
81
|
- lib/daemon_kit/commands/console.rb
|
|
82
|
+
- lib/daemon_kit/commands/destroy.rb
|
|
83
|
+
- lib/daemon_kit/commands/generate.rb
|
|
162
84
|
- lib/daemon_kit/config.rb
|
|
163
85
|
- lib/daemon_kit/console_daemon.rb
|
|
164
86
|
- lib/daemon_kit/core_ext.rb
|
|
@@ -172,6 +94,8 @@ files:
|
|
|
172
94
|
- lib/daemon_kit/error_handlers/hoptoad.rb
|
|
173
95
|
- lib/daemon_kit/error_handlers/mail.rb
|
|
174
96
|
- lib/daemon_kit/exceptions.rb
|
|
97
|
+
- lib/daemon_kit/generators.rb
|
|
98
|
+
- lib/daemon_kit/generators/base.rb
|
|
175
99
|
- lib/daemon_kit/initializer.rb
|
|
176
100
|
- lib/daemon_kit/jabber.rb
|
|
177
101
|
- lib/daemon_kit/nanite.rb
|
|
@@ -187,7 +111,109 @@ files:
|
|
|
187
111
|
- lib/daemon_kit/tasks/god.rake
|
|
188
112
|
- lib/daemon_kit/tasks/log.rake
|
|
189
113
|
- lib/daemon_kit/tasks/monit.rake
|
|
114
|
+
- lib/daemon_kit/vendor/thor-0.12.3/CHANGELOG.rdoc
|
|
115
|
+
- lib/daemon_kit/vendor/thor-0.12.3/LICENSE
|
|
116
|
+
- lib/daemon_kit/vendor/thor-0.12.3/README.rdoc
|
|
117
|
+
- lib/daemon_kit/vendor/thor-0.12.3/Thorfile
|
|
118
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor.rb
|
|
119
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions.rb
|
|
120
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/create_file.rb
|
|
121
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/directory.rb
|
|
122
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/empty_directory.rb
|
|
123
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/file_manipulation.rb
|
|
124
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/actions/inject_into_file.rb
|
|
125
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/base.rb
|
|
126
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/file_binary_read.rb
|
|
127
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/hash_with_indifferent_access.rb
|
|
128
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/core_ext/ordered_hash.rb
|
|
129
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/error.rb
|
|
130
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/group.rb
|
|
131
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/invocation.rb
|
|
132
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser.rb
|
|
133
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/argument.rb
|
|
134
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/arguments.rb
|
|
135
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/option.rb
|
|
136
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/parser/options.rb
|
|
137
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/rake_compat.rb
|
|
138
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/runner.rb
|
|
139
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell.rb
|
|
140
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell/basic.rb
|
|
141
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/shell/color.rb
|
|
142
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/task.rb
|
|
143
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/util.rb
|
|
144
|
+
- lib/daemon_kit/vendor/thor-0.12.3/lib/thor/version.rb
|
|
190
145
|
- lib/daemon_kit/xmpp.rb
|
|
146
|
+
- lib/generators/daemon_kit/amqp/USAGE
|
|
147
|
+
- lib/generators/daemon_kit/amqp/amqp_generator.rb
|
|
148
|
+
- lib/generators/daemon_kit/amqp/templates/config/amqp.yml
|
|
149
|
+
- lib/generators/daemon_kit/amqp/templates/config/pre-daemonize/amqp.rb
|
|
150
|
+
- lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb
|
|
151
|
+
- lib/generators/daemon_kit/app/USAGE
|
|
152
|
+
- lib/generators/daemon_kit/app/app_generator.rb
|
|
153
|
+
- lib/generators/daemon_kit/app/templates/Gemfile
|
|
154
|
+
- lib/generators/daemon_kit/app/templates/README
|
|
155
|
+
- lib/generators/daemon_kit/app/templates/Rakefile
|
|
156
|
+
- lib/generators/daemon_kit/app/templates/bin/daemon.tt
|
|
157
|
+
- lib/generators/daemon_kit/app/templates/config/arguments.rb
|
|
158
|
+
- lib/generators/daemon_kit/app/templates/config/boot.rb
|
|
159
|
+
- lib/generators/daemon_kit/app/templates/config/environment.rb.tt
|
|
160
|
+
- lib/generators/daemon_kit/app/templates/config/environments/development.rb
|
|
161
|
+
- lib/generators/daemon_kit/app/templates/config/environments/production.rb
|
|
162
|
+
- lib/generators/daemon_kit/app/templates/config/environments/test.rb
|
|
163
|
+
- lib/generators/daemon_kit/app/templates/config/post-daemonize/readme
|
|
164
|
+
- lib/generators/daemon_kit/app/templates/config/pre-daemonize/readme
|
|
165
|
+
- lib/generators/daemon_kit/app/templates/lib/%app_name%.rb
|
|
166
|
+
- lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb
|
|
167
|
+
- lib/generators/daemon_kit/app/templates/script/console
|
|
168
|
+
- lib/generators/daemon_kit/app/templates/script/destroy
|
|
169
|
+
- lib/generators/daemon_kit/app/templates/script/generate
|
|
170
|
+
- lib/generators/daemon_kit/capistrano/capistrano_generator.rb
|
|
171
|
+
- lib/generators/daemon_kit/capistrano/templates/Capfile
|
|
172
|
+
- lib/generators/daemon_kit/capistrano/templates/USAGE
|
|
173
|
+
- lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt
|
|
174
|
+
- lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt
|
|
175
|
+
- lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt
|
|
176
|
+
- lib/generators/daemon_kit/capistrano/templates/config/environments/staging.rb
|
|
177
|
+
- lib/generators/daemon_kit/cron/USAGE
|
|
178
|
+
- lib/generators/daemon_kit/cron/cron_generator.rb
|
|
179
|
+
- lib/generators/daemon_kit/cron/templates/config/pre-daemonize/cron.rb
|
|
180
|
+
- lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb
|
|
181
|
+
- lib/generators/daemon_kit/cucumber/USAGE
|
|
182
|
+
- lib/generators/daemon_kit/cucumber/cucumber_generator.rb
|
|
183
|
+
- lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb
|
|
184
|
+
- lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory
|
|
185
|
+
- lib/generators/daemon_kit/cucumber/templates/features/support/env.rb
|
|
186
|
+
- lib/generators/daemon_kit/cucumber/templates/script/cucumber
|
|
187
|
+
- lib/generators/daemon_kit/cucumber/templates/tasks/cucumber.rake
|
|
188
|
+
- lib/generators/daemon_kit/nanite_agent/USAGE
|
|
189
|
+
- lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb
|
|
190
|
+
- lib/generators/daemon_kit/nanite_agent/templates/config/nanite.yml
|
|
191
|
+
- lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize/nanite_agent.rb
|
|
192
|
+
- lib/generators/daemon_kit/nanite_agent/templates/lib/actors/sample.rb
|
|
193
|
+
- lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb
|
|
194
|
+
- lib/generators/daemon_kit/rspec/USAGE
|
|
195
|
+
- lib/generators/daemon_kit/rspec/rspec_generator.rb
|
|
196
|
+
- lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb
|
|
197
|
+
- lib/generators/daemon_kit/rspec/templates/spec/spec.opts
|
|
198
|
+
- lib/generators/daemon_kit/rspec/templates/spec/spec_helper.rb
|
|
199
|
+
- lib/generators/daemon_kit/rspec/templates/tasks/rspec.rake
|
|
200
|
+
- lib/generators/daemon_kit/ruote/USAGE
|
|
201
|
+
- lib/generators/daemon_kit/ruote/ruote_generator.rb
|
|
202
|
+
- lib/generators/daemon_kit/ruote/templates/config/amqp.yml
|
|
203
|
+
- lib/generators/daemon_kit/ruote/templates/config/pre-daemonize/ruote.rb
|
|
204
|
+
- lib/generators/daemon_kit/ruote/templates/config/ruote.yml
|
|
205
|
+
- lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb
|
|
206
|
+
- lib/generators/daemon_kit/ruote/templates/lib/sample.rb
|
|
207
|
+
- lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb
|
|
208
|
+
- lib/generators/daemon_kit/test_unit/USAGE
|
|
209
|
+
- lib/generators/daemon_kit/test_unit/templates/tasks/test_unit.rake
|
|
210
|
+
- lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt
|
|
211
|
+
- lib/generators/daemon_kit/test_unit/templates/test/test_helper.rb
|
|
212
|
+
- lib/generators/daemon_kit/test_unit/test_unit_generator.rb
|
|
213
|
+
- lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb
|
|
214
|
+
- lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml
|
|
215
|
+
- lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb
|
|
216
|
+
- lib/generators/daemon_kit/xmpp/xmpp_generator.rb
|
|
191
217
|
- script/console
|
|
192
218
|
- script/destroy
|
|
193
219
|
- script/generate
|
|
@@ -215,7 +241,6 @@ files:
|
|
|
215
241
|
- test/test_deploy_capistrano_generator.rb
|
|
216
242
|
- test/test_generator_helper.rb
|
|
217
243
|
- test/test_helper.rb
|
|
218
|
-
- test/test_jabber_generator.rb
|
|
219
244
|
- test/test_nanite_agent_generator.rb
|
|
220
245
|
- test/test_ruote_generator.rb
|
|
221
246
|
- test/test_test_unit_generator.rb
|
|
@@ -270,9 +295,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
270
295
|
version:
|
|
271
296
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
272
297
|
requirements:
|
|
273
|
-
- - "
|
|
298
|
+
- - ">"
|
|
274
299
|
- !ruby/object:Gem::Version
|
|
275
|
-
version:
|
|
300
|
+
version: 1.3.1
|
|
276
301
|
version:
|
|
277
302
|
requirements: []
|
|
278
303
|
|
|
@@ -297,7 +322,6 @@ test_files:
|
|
|
297
322
|
- test/test_deploy_capistrano_generator.rb
|
|
298
323
|
- test/test_generator_helper.rb
|
|
299
324
|
- test/test_helper.rb
|
|
300
|
-
- test/test_jabber_generator.rb
|
|
301
325
|
- test/test_nanite_agent_generator.rb
|
|
302
326
|
- test/test_ruote_generator.rb
|
|
303
327
|
- test/test_test_unit_generator.rb
|
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
class DaemonKitGenerator < RubiGen::Base
|
|
2
|
-
|
|
3
|
-
DEFAULT_SHEBANG = File.join(Config::CONFIG['bindir'],
|
|
4
|
-
Config::CONFIG['ruby_install_name'])
|
|
5
|
-
|
|
6
|
-
VALID_GENERATORS = ['default', 'jabber', 'cron', 'amqp', 'nanite_agent', 'ruote']
|
|
7
|
-
|
|
8
|
-
DEPLOYERS = ['none', 'capistrano']
|
|
9
|
-
|
|
10
|
-
TEST_FRAMEWORKS = [ 'rspec', 'test_unit' ]
|
|
11
|
-
|
|
12
|
-
default_options :shebang => DEFAULT_SHEBANG, :author => nil
|
|
13
|
-
|
|
14
|
-
attr_reader :daemon_name
|
|
15
|
-
attr_reader :installer
|
|
16
|
-
attr_reader :deployer
|
|
17
|
-
attr_reader :cucumber
|
|
18
|
-
attr_reader :test_framework
|
|
19
|
-
|
|
20
|
-
def initialize(runtime_args, runtime_options = {})
|
|
21
|
-
super
|
|
22
|
-
usage if args.empty?
|
|
23
|
-
@destination_root = File.expand_path(args.shift)
|
|
24
|
-
@daemon_name = base_name
|
|
25
|
-
extract_options
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def manifest
|
|
29
|
-
# ensure some sanity
|
|
30
|
-
unless VALID_GENERATORS.include?( installer )
|
|
31
|
-
$stderr.puts "Invalid generator: '#{installer}'."
|
|
32
|
-
$stderr.puts "Valid generators are: #{VALID_GENERATORS.join(', ')}"
|
|
33
|
-
exit 1
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
unless DEPLOYERS.include?( deployer )
|
|
37
|
-
$stderr.puts "Invalid deployment mechanism: '#{deployer}'."
|
|
38
|
-
$stderr.puts "Valid deployers are: #{DEPLOYERS.join(', ')}"
|
|
39
|
-
exit 1
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
script_options = { :chmod => 0755, :shebang => options[:shebang] == DEFAULT_SHEBANG ? nil : options[:shebang] }
|
|
43
|
-
|
|
44
|
-
record do |m|
|
|
45
|
-
# Ensure appropriate folder(s) exists
|
|
46
|
-
m.directory ''
|
|
47
|
-
|
|
48
|
-
# Create stubs
|
|
49
|
-
# m.template "template.rb", "some_file_after_erb.rb"
|
|
50
|
-
# m.template_copy_each ["template.rb", "template2.rb"]
|
|
51
|
-
# m.file "file", "some_file_copied"
|
|
52
|
-
# m.file_copy_each ["path/to/file", "path/to/file2"]
|
|
53
|
-
|
|
54
|
-
# Readme
|
|
55
|
-
m.template "README", "README"
|
|
56
|
-
m.template "Rakefile", "Rakefile"
|
|
57
|
-
|
|
58
|
-
# Executable
|
|
59
|
-
m.directory "bin"
|
|
60
|
-
m.template "bin/daemon.erb", "bin/#{daemon_name}", script_options
|
|
61
|
-
|
|
62
|
-
# Generator
|
|
63
|
-
if installer == "default"
|
|
64
|
-
m.directory "libexec"
|
|
65
|
-
m.template "libexec/daemon.erb", "libexec/#{daemon_name}-daemon.rb"
|
|
66
|
-
else
|
|
67
|
-
m.dependency installer, [daemon_name], :destination => destination_root, :collision => :force
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
# Config/Environment
|
|
71
|
-
m.directory "config"
|
|
72
|
-
m.file "config/arguments.rb", "config/arguments.rb"
|
|
73
|
-
m.file "config/boot.rb", "config/boot.rb"
|
|
74
|
-
m.template "config/environment.rb", "config/environment.rb"
|
|
75
|
-
m.directory "config/environments"
|
|
76
|
-
%w{ development test production }.each { |f| m.file "config/environments/#{f}.rb", "config/environments/#{f}.rb" }
|
|
77
|
-
m.directory "config/pre-daemonize"
|
|
78
|
-
m.file "config/pre-daemonize/readme", "config/pre-daemonize/readme"
|
|
79
|
-
m.directory "config/post-daemonize"
|
|
80
|
-
m.file "config/post-daemonize/readme", "config/post-daemonize/readme"
|
|
81
|
-
m.directory "script"
|
|
82
|
-
m.file "script/destroy", "script/destroy", script_options
|
|
83
|
-
m.file "script/console", "script/console", script_options
|
|
84
|
-
m.file "script/generate", "script/generate", script_options
|
|
85
|
-
|
|
86
|
-
# Libraries
|
|
87
|
-
m.directory "lib"
|
|
88
|
-
m.file "lib/daemon.rb", "lib/#{daemon_name}.rb", :collision => :skip
|
|
89
|
-
|
|
90
|
-
# Tasks
|
|
91
|
-
m.directory "tasks"
|
|
92
|
-
|
|
93
|
-
# Tests
|
|
94
|
-
case test_framework
|
|
95
|
-
when 'rspec'
|
|
96
|
-
m.dependency "rspec", [daemon_name], :destination => destination_root, :collision => :force
|
|
97
|
-
when 'test_unit'
|
|
98
|
-
m.dependency "test_unit", [daemon_name], :destination => destination_root, :collision => :force
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
if cucumber
|
|
102
|
-
m.dependency "cucumber", [], :destination => destination_root, :collision => :force
|
|
103
|
-
end
|
|
104
|
-
|
|
105
|
-
# Deployers
|
|
106
|
-
unless deployer == 'none'
|
|
107
|
-
m.dependency "deploy_#{deployer}", [daemon_name], :destination => destination_root, :collision => :force
|
|
108
|
-
end
|
|
109
|
-
|
|
110
|
-
# Others
|
|
111
|
-
m.directory "log"
|
|
112
|
-
m.directory "tmp"
|
|
113
|
-
m.directory "vendor"
|
|
114
|
-
end
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
protected
|
|
118
|
-
def banner
|
|
119
|
-
<<-EOS
|
|
120
|
-
Creates a preconfigured environment for writing Ruby daemon processes.
|
|
121
|
-
|
|
122
|
-
USAGE: #{spec.name} /path/to/your/daemon [options]
|
|
123
|
-
EOS
|
|
124
|
-
end
|
|
125
|
-
|
|
126
|
-
def add_options!(opts)
|
|
127
|
-
opts.separator ''
|
|
128
|
-
opts.separator 'Options:'
|
|
129
|
-
# For each option below, place the default
|
|
130
|
-
# at the top of the file next to "default_options"
|
|
131
|
-
# opts.on("-a", "--author=\"Your Name\"", String,
|
|
132
|
-
# "Some comment about this option",
|
|
133
|
-
# "Default: none") { |o| options[:author] = o }
|
|
134
|
-
|
|
135
|
-
opts.on("-i", "--install=generator", String,
|
|
136
|
-
"Select a generator to use (other than the default).",
|
|
137
|
-
"Available generators: #{VALID_GENERATORS.join(', ')}",
|
|
138
|
-
"Defaults to: default") do |installer|
|
|
139
|
-
options[:installer] = installer
|
|
140
|
-
end
|
|
141
|
-
|
|
142
|
-
opts.on("-d", "--deploy-with=config", String,
|
|
143
|
-
"Select an optional deployment mechanism.",
|
|
144
|
-
"Available deployers: #{DEPLOYERS.join(', ')}",
|
|
145
|
-
"Defaults to: none") do |deploy|
|
|
146
|
-
options[:deployer] = deploy
|
|
147
|
-
end
|
|
148
|
-
|
|
149
|
-
opts.on("-T", "--test-with=type", String,
|
|
150
|
-
"Select your test framework.",
|
|
151
|
-
"Available test framworks: #{TEST_FRAMEWORKS.join(', ')}",
|
|
152
|
-
"Defaults to: rspec") do |test|
|
|
153
|
-
options[:test_framework] = test
|
|
154
|
-
end
|
|
155
|
-
|
|
156
|
-
opts.on("--cucumber",
|
|
157
|
-
"Install cucumber.") do
|
|
158
|
-
options[:cucumber] = true
|
|
159
|
-
end
|
|
160
|
-
|
|
161
|
-
opts.on("-r", "--ruby=path", String,
|
|
162
|
-
"Path to the Ruby binary of your choice (otherwise scripts use env, dispatchers current path).",
|
|
163
|
-
"Default: #{DEFAULT_SHEBANG}") { |x| options[:shebang] = x }
|
|
164
|
-
opts.on("-v", "--version", "Show the #{File.basename($0)} version number and quit.")
|
|
165
|
-
end
|
|
166
|
-
|
|
167
|
-
def extract_options
|
|
168
|
-
# for each option, extract it into a local variable (and create an "attr_reader :author" at the top)
|
|
169
|
-
# Templates can access these value via the attr_reader-generated methods, but not the
|
|
170
|
-
# raw instance variable value.
|
|
171
|
-
# @author = options[:author]
|
|
172
|
-
@installer = options[:installer] || 'default'
|
|
173
|
-
@deployer = (options[:deployer] || 'none').strip
|
|
174
|
-
@cucumber = options[:cucumber] || false
|
|
175
|
-
@test_framework = options[:test_framework] || 'rspec'
|
|
176
|
-
end
|
|
177
|
-
|
|
178
|
-
end
|