capobvious 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/capistrano/ext/capobvious.rb +33 -19
- data/lib/capobvious/version.rb +1 -1
- metadata +5 -10
@@ -49,8 +49,11 @@ Capistrano::Configuration.instance.load do
|
|
49
49
|
set :local_folder_path, "tmp/backup"
|
50
50
|
set :timestamp, Time.new.to_i.to_s
|
51
51
|
set :db_file_name, "#{database}-#{timestamp}.sql"
|
52
|
-
set :sys_file_name, "#{application}-system-#{timestamp}.7z"
|
53
52
|
set :db_archive_ext, "7z"
|
53
|
+
set :sys_file_name, "#{application}-system-#{timestamp}.#{db_archive_ext}"
|
54
|
+
|
55
|
+
set :arch_extract, "7z x"
|
56
|
+
set :arch_create, "7z a"
|
54
57
|
|
55
58
|
|
56
59
|
#after "deploy:symlink", "auto:run"
|
@@ -84,6 +87,22 @@ Capistrano::Configuration.instance.load do
|
|
84
87
|
end
|
85
88
|
end
|
86
89
|
|
90
|
+
after "deploy:update_code", "create:dbconf"
|
91
|
+
namespace :create do
|
92
|
+
task :files do
|
93
|
+
create.rvmrc
|
94
|
+
end
|
95
|
+
desc "Create .rvmrc & files"
|
96
|
+
task :rvmrc do
|
97
|
+
put rvmrc, "#{current_path}/.rvmrc"
|
98
|
+
end
|
99
|
+
task :dbconf do
|
100
|
+
serv_path = (exists?(:dbconf) && fetch(:dbconf)) || "#{database_yml_path}.server"
|
101
|
+
if File.exist?(serv_path)
|
102
|
+
run "cd #{latest_release} && cp -v #{serv_path} #{database_yml_path}"
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
87
106
|
namespace :bundle do
|
88
107
|
desc "Run bundle install"
|
89
108
|
task :install do
|
@@ -113,15 +132,6 @@ Capistrano::Configuration.instance.load do
|
|
113
132
|
install.p7zip
|
114
133
|
end
|
115
134
|
end
|
116
|
-
namespace :create do
|
117
|
-
task :files do
|
118
|
-
create.rvmrc
|
119
|
-
end
|
120
|
-
desc "Create .rvmrc & files"
|
121
|
-
task :rvmrc do
|
122
|
-
put rvmrc, "#{current_path}/.rvmrc"
|
123
|
-
end
|
124
|
-
end
|
125
135
|
|
126
136
|
|
127
137
|
namespace :db do
|
@@ -145,7 +155,7 @@ Capistrano::Configuration.instance.load do
|
|
145
155
|
task :import do
|
146
156
|
file_name = "#{db_file_name}.#{db_archive_ext}"
|
147
157
|
file_path = "#{local_folder_path}/#{file_name}"
|
148
|
-
system "cd #{local_folder_path} &&
|
158
|
+
system "cd #{local_folder_path} && #{arch_extract} #{file_name}"
|
149
159
|
system "echo \"drop database #{local_database}\" | #{run_local_psql}"
|
150
160
|
system "echo \"create database #{local_database} owner #{local_db_username};\" | #{run_local_psql}"
|
151
161
|
# system "#{run_local_psql} #{local_database} < #{local_folder_path}/#{db_file_name}"
|
@@ -163,7 +173,7 @@ Capistrano::Configuration.instance.load do
|
|
163
173
|
task :sys do
|
164
174
|
backup.sys
|
165
175
|
system "rm -rfv public/system/"
|
166
|
-
system "
|
176
|
+
system "#{arch_extract} #{local_folder_path}/#{sys_file_name} -opublic"
|
167
177
|
end
|
168
178
|
task :db do
|
169
179
|
db.pg_import
|
@@ -182,7 +192,8 @@ Capistrano::Configuration.instance.load do
|
|
182
192
|
result = {}
|
183
193
|
i = 0
|
184
194
|
Dir.foreach(local_folder_path) do |d|
|
185
|
-
|
195
|
+
regexp = Regexp.new("\d+?(\.#{archive_ext})")
|
196
|
+
if d.include?(sys_file_name.gsub(regexp,""))
|
186
197
|
result[i.to_s] = d
|
187
198
|
i+=1
|
188
199
|
end
|
@@ -195,7 +206,7 @@ Capistrano::Configuration.instance.load do
|
|
195
206
|
puts "You selected #{file}"
|
196
207
|
upload("#{local_folder_path}/#{file}","#{shared_path}/#{file}")
|
197
208
|
run "rm -rfv #{shared_path}/system/*"
|
198
|
-
run "
|
209
|
+
run "#{arch_extract} #{shared_path}/#{file} -o#{shared_path}"
|
199
210
|
run "chmod -R o=rX #{shared_path}/system"
|
200
211
|
run "rm -v #{shared_path}/#{file}"
|
201
212
|
end
|
@@ -225,7 +236,7 @@ Capistrano::Configuration.instance.load do
|
|
225
236
|
if adapter == "postgresql"
|
226
237
|
|
227
238
|
run "export PGPASSWORD=\"#{db_password}\" && pg_dump -U #{db_username} #{database} > #{dump_file_path}"
|
228
|
-
run "cd #{shared_path} &&
|
239
|
+
run "cd #{shared_path} && #{arch_create} #{output_file} #{dump_file_path} && rm #{dump_file_path}"
|
229
240
|
else
|
230
241
|
puts "Cannot backup, adapter #{adapter} is not implemented for backup yet"
|
231
242
|
end
|
@@ -235,9 +246,13 @@ Capistrano::Configuration.instance.load do
|
|
235
246
|
desc "Backup public/system folder"
|
236
247
|
task :sys do
|
237
248
|
file_path = "#{shared_path}/backup/#{sys_file_name}"
|
238
|
-
run "
|
249
|
+
run "#{arch_create} #{file_path} #{shared_path}/system"
|
239
250
|
download(file_path, "#{local_folder_path}/#{sys_file_name}")
|
240
251
|
end
|
252
|
+
task :all do
|
253
|
+
backup.db
|
254
|
+
backup.sys
|
255
|
+
end
|
241
256
|
desc "Clean backup folder"
|
242
257
|
task :clean do
|
243
258
|
run "rm -rfv #{shared_path}/backup/*"
|
@@ -437,10 +452,9 @@ Capistrano::Configuration.instance.load do
|
|
437
452
|
end
|
438
453
|
desc "restart unicorn"
|
439
454
|
task :restart do
|
440
|
-
remote_file_exists
|
441
|
-
if remote_file_exists
|
455
|
+
if remote_file_exists?(unicorn_pid)
|
442
456
|
logger.important("Stopping...", "Unicorn")
|
443
|
-
run "
|
457
|
+
run "kill -s USR2 `cat #{unicorn_pid}`"
|
444
458
|
else
|
445
459
|
logger.important("No PIDs found. Starting Unicorn server...", "Unicorn")
|
446
460
|
run "cd #{current_path} && bundle exec unicorn -c #{unicorn_conf} -E #{rails_env} -D"
|
data/lib/capobvious/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capobvious
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: capistrano
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70170581011280 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,12 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
24
|
+
version_requirements: *70170581011280
|
30
25
|
description: Capfile that we use every day
|
31
26
|
email:
|
32
27
|
- donotsendhere@gmail.com
|
@@ -65,7 +60,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
60
|
version: '0'
|
66
61
|
requirements: []
|
67
62
|
rubyforge_project: capobvious
|
68
|
-
rubygems_version: 1.8.
|
63
|
+
rubygems_version: 1.8.15
|
69
64
|
signing_key:
|
70
65
|
specification_version: 3
|
71
66
|
summary: Cap recipes
|