capricorn 0.2.00 → 0.2.01
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/app_generators/engine/engine_generator.rb +12 -11
- data/app_generators/engine/templates/Gmfile +1 -1
- data/app_generators/engine/templates/config/initializers/rails_init.rb +1 -0
- data/app_generators/engine/templates/gitignore +7 -1
- data/lib/capricorn/actors/base_actor.rb +25 -8
- data/lib/capricorn/actors/plesk_actor.rb +28 -17
- data/lib/capricorn/app_runner.rb +20 -31
- data/lib/capricorn/apps/dev.rb +3 -3
- data/lib/capricorn/daemon.rb +17 -7
- data/lib/capricorn/extentions/rubygems_plugin.rb +1 -1
- data/lib/capricorn/extentions/thor_extentions.rb +1 -1
- data/lib/capricorn/job_queue.rb +2 -1
- data/lib/capricorn/satellite.rb +1 -1
- data/lib/capricorn/server.rb +2 -2
- data/lib/capricorn/server/daemon.rb +26 -31
- data/lib/capricorn/server/security.rb +17 -10
- data/lib/capricorn/system.rb +5 -7
- metadata +7 -6
|
@@ -3,8 +3,8 @@ class EngineGenerator < RubiGen::Base
|
|
|
3
3
|
|
|
4
4
|
def initialize(runtime_args, runtime_options = {})
|
|
5
5
|
super
|
|
6
|
-
@destination_root =
|
|
7
|
-
@engine_name =
|
|
6
|
+
@destination_root = File.expand_path('.')
|
|
7
|
+
@engine_name = args.shift.underscore
|
|
8
8
|
end
|
|
9
9
|
|
|
10
10
|
def manifest
|
|
@@ -23,15 +23,16 @@ class EngineGenerator < RubiGen::Base
|
|
|
23
23
|
m.directory "rails"
|
|
24
24
|
m.directory "tasks"
|
|
25
25
|
|
|
26
|
-
m.template('config/routes.rb',
|
|
27
|
-
m.template('
|
|
28
|
-
m.template('
|
|
29
|
-
m.template('init.rb',
|
|
30
|
-
m.template('
|
|
31
|
-
m.template('
|
|
32
|
-
m.template('
|
|
33
|
-
m.template('
|
|
34
|
-
m.template('
|
|
26
|
+
m.template('config/routes.rb', "config/routes.rb")
|
|
27
|
+
m.template('config/initializers/rails_init.rb', "config/initializers/rails_init.rb")
|
|
28
|
+
m.template('Gmfile', "Gmfile")
|
|
29
|
+
m.template('rails/init.rb', "rails/init.rb")
|
|
30
|
+
m.template('init.rb', "init.rb")
|
|
31
|
+
m.template('tasks/engine_tasks.rake', "tasks/#{engine_name}_tasks.rake")
|
|
32
|
+
m.template('README.rdoc', "README.rdoc")
|
|
33
|
+
m.template('MIT-LICENSE.txt', "MIT-LICENSE.txt")
|
|
34
|
+
m.template('lib/engine.rb', "lib/#{engine_name}.rb")
|
|
35
|
+
m.template('gitignore', ".gitignore")
|
|
35
36
|
|
|
36
37
|
end
|
|
37
38
|
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require File.dirname(__FILE__)+'/../../init'
|
|
@@ -71,7 +71,7 @@ module Capricorn
|
|
|
71
71
|
gems_header = " # Gems added by engine_manager:\n \n"
|
|
72
72
|
|
|
73
73
|
gsub_file('config/environment.rb') do |content|
|
|
74
|
-
content.gsub!
|
|
74
|
+
content.gsub!(/^\s*config.gem.+\n/, '')
|
|
75
75
|
content.gsub! %r{#{Regexp.escape(rails_header)}(#{Regexp.escape(gems_header)})?},
|
|
76
76
|
"#{rails_header}#{gems_header}"
|
|
77
77
|
|
|
@@ -105,7 +105,7 @@ module Capricorn
|
|
|
105
105
|
FileUtils.mkdir_p("db/migrate", :verbose => true)
|
|
106
106
|
unlinked_migrations.concat(Dir.glob("#{path}/*.rb"))
|
|
107
107
|
linked_migrations.each do |migration, target|
|
|
108
|
-
if target.
|
|
108
|
+
if target[0,spec.full_gem_path.size] == spec.full_gem_path
|
|
109
109
|
unlinked_migrations.delete(target)
|
|
110
110
|
unused_migrations.delete(migration)
|
|
111
111
|
end
|
|
@@ -133,7 +133,14 @@ module Capricorn
|
|
|
133
133
|
end
|
|
134
134
|
system.as_user(system.web_user, system.web_group) do
|
|
135
135
|
unlinked_migrations.each do |migration|
|
|
136
|
-
|
|
136
|
+
|
|
137
|
+
begin
|
|
138
|
+
FileUtils.ln_s(migration, "db/migrate/#{File.basename(migration)}", :verbose => true)
|
|
139
|
+
rescue
|
|
140
|
+
FileUtils.rm_rf("db/migrate/#{File.basename(migration)}", :verbose => true)
|
|
141
|
+
retry
|
|
142
|
+
end
|
|
143
|
+
|
|
137
144
|
end
|
|
138
145
|
end
|
|
139
146
|
|
|
@@ -171,18 +178,30 @@ module Capricorn
|
|
|
171
178
|
# install a gem.
|
|
172
179
|
def gem_install(name, options={})
|
|
173
180
|
gem_cmd('install', name, options)
|
|
181
|
+
gem_refresh
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
def gem_refresh
|
|
185
|
+
original_paths = Gem.path
|
|
186
|
+
Gem.refresh
|
|
187
|
+
Gem.send(:set_paths, original_paths.compact.join(File::PATH_SEPARATOR))
|
|
174
188
|
end
|
|
175
189
|
|
|
176
190
|
# check if a gem is installed
|
|
177
191
|
def gem_installed(name, options)
|
|
178
192
|
version = options[:version] || '0.0.0'
|
|
179
193
|
options = { :version => version, :installed => true }
|
|
180
|
-
(gem_cmd('list', name, options).strip
|
|
194
|
+
(gem_cmd('list', name, options).strip =~ /true/)
|
|
181
195
|
end
|
|
182
196
|
|
|
183
197
|
# update a gem
|
|
184
198
|
def gem_update(name, options={})
|
|
185
|
-
!(gem_cmd('update', name, options) =~ /Nothing to update/)
|
|
199
|
+
if !(gem_cmd('update', name, options) =~ /Nothing to update/)
|
|
200
|
+
gem_refresh
|
|
201
|
+
true
|
|
202
|
+
else
|
|
203
|
+
false
|
|
204
|
+
end
|
|
186
205
|
end
|
|
187
206
|
|
|
188
207
|
# ensure the presence of a gem
|
|
@@ -207,9 +226,7 @@ module Capricorn
|
|
|
207
226
|
"--#{k}=#{v.inspect}"
|
|
208
227
|
end
|
|
209
228
|
end
|
|
210
|
-
|
|
211
|
-
Gem.refresh
|
|
212
|
-
output
|
|
229
|
+
user_run(user, "#{gem_bin_path} #{cmd} #{args.join(' ')}")
|
|
213
230
|
end
|
|
214
231
|
|
|
215
232
|
end
|
|
@@ -60,17 +60,30 @@ module Capricorn
|
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
def create_database
|
|
63
|
-
db_name = satellite
|
|
63
|
+
db_name = database_name_for(satellite)
|
|
64
64
|
db_user = db_name[0,13]
|
|
65
65
|
db_pswd = (rand(1_000_000_000) + 10_000).to_s
|
|
66
66
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
67
|
+
create_database_for(satellite, :d, db_name, db_user, db_pswd)
|
|
68
|
+
create_database_for(satellite, :t, db_name, db_user, db_pswd)
|
|
69
|
+
create_database_for(satellite, :p, db_name, db_user, db_pswd)
|
|
71
70
|
|
|
72
71
|
system.as_user(system.web_user, system.web_group) do
|
|
73
|
-
|
|
72
|
+
db_file = File.join(system.satellite_root, 'config', 'database.yml')
|
|
73
|
+
write_database_config(db_file, db_name, db_user, db_pswd)
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def drop_databases
|
|
78
|
+
db_name = satellite.domain.downcase.gsub(/[^a-z]+/, '_')[0,63]
|
|
79
|
+
|
|
80
|
+
system.drop_database("#{db_name}_d")
|
|
81
|
+
system.drop_database("#{db_name}_t")
|
|
82
|
+
system.drop_database("#{db_name}_p")
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def write_database_config(db_file, db_name, db_user, db_pswd)
|
|
86
|
+
File.open(db_file, 'w+') { |f| f.write(%{
|
|
74
87
|
development:
|
|
75
88
|
adapter: mysql
|
|
76
89
|
database: #{db_name}_d
|
|
@@ -97,19 +110,17 @@ production:
|
|
|
97
110
|
host: localhost
|
|
98
111
|
encoding: utf8
|
|
99
112
|
socket: /var/lib/mysql/mysql.sock
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
db_file = File.join(system.satellite_root, 'config', 'database.yml')
|
|
103
|
-
File.open(db_file, 'w+') { |f| f.write config }
|
|
104
|
-
end
|
|
113
|
+
}) }
|
|
105
114
|
end
|
|
106
115
|
|
|
107
|
-
def
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
116
|
+
def database_name_for(satellite)
|
|
117
|
+
satellite.domain.downcase.gsub(/[^a-z]+/, '_')[0,63]
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
def create_database_for(satellite, environment, db_name, db_user, db_pswd)
|
|
121
|
+
db_name = "#{db_name}_#{environment}"
|
|
122
|
+
db_user = "#{db_user}_u#{environment}"
|
|
123
|
+
system.create_database(satellite.basedomain, db_name, db_user, db_pswd)
|
|
113
124
|
end
|
|
114
125
|
|
|
115
126
|
module Helper
|
data/lib/capricorn/app_runner.rb
CHANGED
|
@@ -25,7 +25,7 @@ module Capricorn
|
|
|
25
25
|
(options[:all] || k.group_name == group) &&
|
|
26
26
|
Thor::Util.constant_to_thor_path(k.name) =~ search
|
|
27
27
|
end
|
|
28
|
-
display_klasses(
|
|
28
|
+
display_klasses(classes)
|
|
29
29
|
end
|
|
30
30
|
end
|
|
31
31
|
|
|
@@ -44,48 +44,37 @@ module Capricorn
|
|
|
44
44
|
|
|
45
45
|
private
|
|
46
46
|
|
|
47
|
-
def display_klasses(
|
|
48
|
-
klasses -= [Thor, Capricorn::AppRunner]
|
|
49
|
-
raise Error, "No Thor tasks available" if klasses.empty?
|
|
47
|
+
def display_klasses(klasses = Thor.subclasses)
|
|
48
|
+
klasses -= [Thor, Capricorn::AppRunner]
|
|
50
49
|
|
|
51
|
-
if
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
column_width = [max_name + 4, modules_label.size + 1].max
|
|
56
|
-
|
|
57
|
-
print "%-#{column_width}s" % modules_label
|
|
58
|
-
puts namespaces_label
|
|
59
|
-
print "%-#{column_width}s" % ("-" * modules_label.size)
|
|
60
|
-
puts "-" * namespaces_label.size
|
|
50
|
+
if klasses.empty?
|
|
51
|
+
puts "\033[1;34mNo Thor tasks available\033[0m"
|
|
52
|
+
else
|
|
53
|
+
maxima = column_maxima_for(klasses)
|
|
61
54
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
puts info[:constants].map { |c| Thor::Util.constant_to_thor_path(c) }.join(", ")
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
puts
|
|
55
|
+
puts # add some spacing
|
|
56
|
+
klasses.each { |k| display_tasks(k, maxima.first, maxima.last) }
|
|
68
57
|
end
|
|
69
|
-
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def column_maxima_for(klasses)
|
|
70
61
|
# Calculate the largest base class name
|
|
71
|
-
|
|
62
|
+
klass_with_longest_name = klasses.max do |x,y|
|
|
72
63
|
Thor::Util.constant_to_thor_path(x.name).size <=> Thor::Util.constant_to_thor_path(y.name).size
|
|
73
|
-
end
|
|
64
|
+
end
|
|
65
|
+
max_base = klass_with_longest_name.name.size
|
|
74
66
|
|
|
75
67
|
# Calculate the size of the largest option description
|
|
76
68
|
max_left_item = klasses.max do |x,y|
|
|
77
|
-
(x.maxima.usage + x.maxima.opt).to_i
|
|
69
|
+
total_x = (x.maxima.usage + x.maxima.opt).to_i
|
|
70
|
+
total_y = (y.maxima.usage + y.maxima.opt).to_i
|
|
71
|
+
total_x <=> total_y
|
|
78
72
|
end
|
|
79
73
|
|
|
80
74
|
max_left = max_left_item.maxima.usage + max_left_item.maxima.opt
|
|
81
75
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
klasses.each { |k| display_tasks(k, max_base, max_left); }
|
|
85
|
-
else
|
|
86
|
-
puts "\033[1;34mNo Thor tasks available\033[0m"
|
|
87
|
-
end
|
|
88
|
-
end
|
|
76
|
+
return [max_base, max_left]
|
|
77
|
+
end
|
|
89
78
|
|
|
90
79
|
def display_tasks(klass, max_base, max_left)
|
|
91
80
|
if klass.tasks.values.length > 1
|
data/lib/capricorn/apps/dev.rb
CHANGED
|
@@ -4,10 +4,10 @@ module Capricorn
|
|
|
4
4
|
module Apps # :nodoc:
|
|
5
5
|
|
|
6
6
|
class Dev < Thor
|
|
7
|
-
desc "activate DOMAIN", "turn an existing satelite into a development satelite"
|
|
8
|
-
def activate(domain)
|
|
7
|
+
desc "activate DOMAIN NAME", "turn an existing satelite into a development satelite"
|
|
8
|
+
def activate(domain, name)
|
|
9
9
|
Capricorn.runtime_gem('rubigen', Capricorn::RUBIGEN_VERSION)
|
|
10
|
-
Capricorn.client.make_development_satellite(domain)
|
|
10
|
+
Capricorn.client.make_development_satellite(domain, name)
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
13
|
|
data/lib/capricorn/daemon.rb
CHANGED
|
@@ -41,15 +41,10 @@ module Capricorn
|
|
|
41
41
|
puts "Pid file #{PidFile.pid_file} already exists. Not starting."
|
|
42
42
|
exit 1
|
|
43
43
|
end
|
|
44
|
-
Capricorn::Daemon::PidFile.store(Process.pid)
|
|
45
|
-
Dir.chdir Capricorn.system.root
|
|
46
|
-
File.umask 0000
|
|
47
44
|
|
|
48
|
-
|
|
45
|
+
setup_child
|
|
46
|
+
regitser_handlers(daemon, &block)
|
|
49
47
|
|
|
50
|
-
trap("TERM") { daemon.stop; exit }
|
|
51
|
-
at_exit { Capricorn::Daemon::PidFile.destroy if $master }
|
|
52
|
-
at_exit(&block) if block
|
|
53
48
|
daemon.start
|
|
54
49
|
end
|
|
55
50
|
puts "Daemon started."
|
|
@@ -66,6 +61,21 @@ module Capricorn
|
|
|
66
61
|
puts "Pid file found, but process was not running. The daemon may have died."
|
|
67
62
|
end
|
|
68
63
|
|
|
64
|
+
private
|
|
65
|
+
|
|
66
|
+
def self.setup_child
|
|
67
|
+
Capricorn::Daemon::PidFile.store(Process.pid)
|
|
68
|
+
Dir.chdir Capricorn.system.root
|
|
69
|
+
File.umask 0000
|
|
70
|
+
Capricorn::ExceptionHandler.redirect_std
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def self.regitser_handlers(daemon, &block)
|
|
74
|
+
trap("TERM") { daemon.stop; exit }
|
|
75
|
+
at_exit { Capricorn::Daemon::PidFile.destroy if $master }
|
|
76
|
+
at_exit(&block) if block
|
|
77
|
+
end
|
|
78
|
+
|
|
69
79
|
end
|
|
70
80
|
end
|
|
71
81
|
end
|
|
@@ -20,7 +20,7 @@ module Gem # :nodoc:
|
|
|
20
20
|
alias_method :to_ruby_without_engines, :to_ruby # :nodoc:
|
|
21
21
|
def to_ruby # :nodoc:
|
|
22
22
|
code = to_ruby_without_engines
|
|
23
|
-
code.gsub!
|
|
23
|
+
code.gsub!(/s\.engine_dependencies\s+[=]([^\n]+)/, 's.instance_variable_set(:@engine_dependencies,\1)')
|
|
24
24
|
code
|
|
25
25
|
end
|
|
26
26
|
end
|
data/lib/capricorn/job_queue.rb
CHANGED
data/lib/capricorn/satellite.rb
CHANGED
data/lib/capricorn/server.rb
CHANGED
|
@@ -61,10 +61,10 @@ module Capricorn
|
|
|
61
61
|
end
|
|
62
62
|
end
|
|
63
63
|
|
|
64
|
-
def make_development_satellite(domain)
|
|
64
|
+
def make_development_satellite(domain, name)
|
|
65
65
|
satellite = Capricorn.system.find_satellite(domain)
|
|
66
66
|
if satellite
|
|
67
|
-
Capricorn.system.make_development_satellite(satellite)
|
|
67
|
+
Capricorn.system.make_development_satellite(satellite, name)
|
|
68
68
|
else
|
|
69
69
|
Capricorn.log "Satellite not found (#{domain})"
|
|
70
70
|
end
|
|
@@ -31,55 +31,50 @@ module Capricorn
|
|
|
31
31
|
# start the failsafe runner.
|
|
32
32
|
def start_with_failsafe
|
|
33
33
|
$master = true
|
|
34
|
-
stop_server = false
|
|
35
|
-
wait_before_start = 0
|
|
36
34
|
retries = 0
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
sleep(wait_before_start)
|
|
40
|
-
wait_before_start = 0
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
pid = Process.fork { self.run_server }
|
|
35
|
+
loop do
|
|
36
|
+
pid = self.run_server
|
|
44
37
|
return unless pid
|
|
45
38
|
Process.waitpid(pid, 0)
|
|
39
|
+
|
|
46
40
|
case $?.exitstatus
|
|
47
41
|
when Capricorn::STOP_STATUS
|
|
48
|
-
|
|
49
|
-
retries = 0
|
|
42
|
+
return
|
|
50
43
|
when Capricorn::RESTART_STATUS
|
|
51
|
-
|
|
52
|
-
retries = 0
|
|
44
|
+
retries = 0
|
|
53
45
|
when Capricorn::RELOAD_STATUS
|
|
54
|
-
stop_server = true
|
|
55
|
-
retries = 0
|
|
56
46
|
Capricorn::Daemon::PidFile.destroy
|
|
57
47
|
Capricorn.system.run %{#{Capricorn::BIN_PATH} #{ORIGINAL_ARGV.join(' ')}}
|
|
48
|
+
return
|
|
58
49
|
else
|
|
59
50
|
retries += 1
|
|
60
|
-
|
|
51
|
+
return if retries >= 3
|
|
61
52
|
end
|
|
53
|
+
|
|
54
|
+
sleep(2)
|
|
62
55
|
end
|
|
63
56
|
end
|
|
64
57
|
|
|
65
58
|
# start the actual DRb server
|
|
66
59
|
def run_server
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
60
|
+
Process.fork do
|
|
61
|
+
$master = false
|
|
62
|
+
Dir.chdir(Capricorn.system.root)
|
|
63
|
+
|
|
64
|
+
Capricorn.log "Server started"
|
|
65
|
+
uri = "druby://#{Capricorn.system.server_hostname}:#{Capricorn.system.server_port}"
|
|
66
|
+
DRb.start_service uri, self.proxy, self.options_for_server
|
|
67
|
+
Capricorn.log "listening at #{self.construct_uri(uri)}"
|
|
68
|
+
make_client_cert_public!
|
|
69
|
+
|
|
70
|
+
at_exit do
|
|
71
|
+
Capricorn.system.queue.stop!
|
|
72
|
+
Capricorn.log "Server stopped"
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
DRb.thread.join
|
|
76
|
+
exit($exitstatus || Capricorn::STOP_STATUS)
|
|
79
77
|
end
|
|
80
|
-
|
|
81
|
-
DRb.thread.join
|
|
82
|
-
exit($exitstatus || Capricorn::STOP_STATUS)
|
|
83
78
|
end
|
|
84
79
|
|
|
85
80
|
end
|
|
@@ -36,21 +36,28 @@ module Capricorn
|
|
|
36
36
|
FileUtils.mkdir_p('/tmp/quick_cert')
|
|
37
37
|
File.chmod(0700, '/tmp/quick_cert')
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
Capricorn.system.run "tar xzf QuickCert-1.0.2.tar.gz"
|
|
42
|
-
|
|
43
|
-
Dir.chdir('/tmp/quick_cert/QuickCert-1.0.2') do
|
|
44
|
-
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb config"
|
|
45
|
-
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb setup"
|
|
46
|
-
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb install"
|
|
47
|
-
end
|
|
48
|
-
end
|
|
39
|
+
download_quick_cert!
|
|
40
|
+
build_quick_cert!
|
|
49
41
|
|
|
50
42
|
FileUtils.rm_rf('/tmp/quick_cert')
|
|
51
43
|
end
|
|
52
44
|
end
|
|
53
45
|
|
|
46
|
+
def download_quick_cert!
|
|
47
|
+
Dir.chdir('/tmp/quick_cert') do
|
|
48
|
+
Capricorn.system.run "curl -O #{Capricorn::QUICK_CERT}"
|
|
49
|
+
Capricorn.system.run "tar xzf QuickCert-1.0.2.tar.gz"
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def build_quick_cert!
|
|
54
|
+
Dir.chdir('/tmp/quick_cert/QuickCert-1.0.2') do
|
|
55
|
+
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb config"
|
|
56
|
+
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb setup"
|
|
57
|
+
Capricorn.system.run "#{Capricorn.system.ruby_path} ./setup.rb install"
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
54
61
|
def dump_quick_cert_config!
|
|
55
62
|
return if File.file? Capricorn.system.path('quick_cert', 'qc_config')
|
|
56
63
|
|
data/lib/capricorn/system.rb
CHANGED
|
@@ -88,18 +88,16 @@ module Capricorn
|
|
|
88
88
|
end
|
|
89
89
|
end
|
|
90
90
|
|
|
91
|
-
def make_development_satellite(satellite)
|
|
91
|
+
def make_development_satellite(satellite, name)
|
|
92
92
|
if satellite
|
|
93
93
|
Capricorn.runtime_gem('rubigen', Capricorn::RUBIGEN_VERSION)
|
|
94
94
|
resolve_options_with satellite do
|
|
95
95
|
as_user(web_user, web_group) do
|
|
96
|
-
Dir.chdir(
|
|
96
|
+
Dir.chdir(satellite_root) do
|
|
97
97
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
FileUtils.rm_r("
|
|
101
|
-
FileUtils.rm_r("#{name}/README", :verbose => true) rescue nil
|
|
102
|
-
FileUtils.rm_r("#{name}/public/javascripts", :verbose => true) rescue nil
|
|
98
|
+
FileUtils.rm_r("doc", :verbose => true) rescue nil
|
|
99
|
+
FileUtils.rm_r("README", :verbose => true) rescue nil
|
|
100
|
+
FileUtils.rm_r("public/javascripts", :verbose => true) rescue nil
|
|
103
101
|
|
|
104
102
|
require 'rubigen/scripts/generate'
|
|
105
103
|
RubiGen::Base.use_application_sources!
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: capricorn
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.01
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Simon Menke
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-
|
|
12
|
+
date: 2009-06-16 00:00:00 +02:00
|
|
13
13
|
default_executable: capricorn
|
|
14
14
|
dependencies: []
|
|
15
15
|
|
|
@@ -66,14 +66,15 @@ files:
|
|
|
66
66
|
- lib/capricorn.rb
|
|
67
67
|
- lib/rubygems_plugin.rb
|
|
68
68
|
- app_generators/engine/engine_generator.rb
|
|
69
|
-
- app_generators/engine/templates/
|
|
70
|
-
- app_generators/engine/templates/MIT-LICENSE.txt
|
|
71
|
-
- app_generators/engine/templates/README.rdoc
|
|
69
|
+
- app_generators/engine/templates/config/initializers/rails_init.rb
|
|
72
70
|
- app_generators/engine/templates/config/routes.rb
|
|
73
71
|
- app_generators/engine/templates/gitignore
|
|
72
|
+
- app_generators/engine/templates/Gmfile
|
|
74
73
|
- app_generators/engine/templates/init.rb
|
|
75
74
|
- app_generators/engine/templates/lib/engine.rb
|
|
75
|
+
- app_generators/engine/templates/MIT-LICENSE.txt
|
|
76
76
|
- app_generators/engine/templates/rails/init.rb
|
|
77
|
+
- app_generators/engine/templates/README.rdoc
|
|
77
78
|
- app_generators/engine/templates/tasks/engine_tasks.rake
|
|
78
79
|
has_rdoc: true
|
|
79
80
|
homepage: http://github.com/simonmenke/capricorn
|
|
@@ -99,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
99
100
|
requirements: []
|
|
100
101
|
|
|
101
102
|
rubyforge_project:
|
|
102
|
-
rubygems_version: 1.3.
|
|
103
|
+
rubygems_version: 1.3.3
|
|
103
104
|
signing_key:
|
|
104
105
|
specification_version: 3
|
|
105
106
|
summary: Manage satellites
|