capistrano-exts 1.3.3 → 1.3.4
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/README.md +1 -1
- data/lib/capistrano-exts/receipts/functions.rb +7 -4
- data/lib/capistrano-exts/receipts/mysql.rb +10 -6
- data/lib/capistrano-exts/version.rb +1 -1
- metadata +16 -16
data/README.md
CHANGED
@@ -54,15 +54,18 @@ Capistrano::Configuration.instance(:must_exist).load do
|
|
54
54
|
['%']
|
55
55
|
end
|
56
56
|
|
57
|
-
def
|
57
|
+
def generate_random_file_name(data = nil)
|
58
58
|
if data.present?
|
59
|
-
|
60
|
-
"/tmp/#{fetch :application}_#{Time.now.strftime('%d-%m-%Y_%H-%M-%S')}_#{data_hash}"
|
59
|
+
"#{fetch :application}_#{Time.now.strftime('%d-%m-%Y_%H-%M-%S')}_#{Digest::SHA1.hexdigest data}"
|
61
60
|
else
|
62
|
-
"
|
61
|
+
"#{fetch :application}_#{Time.now.strftime('%d-%m-%Y_%H-%M-%S')}"
|
63
62
|
end
|
64
63
|
end
|
65
64
|
|
65
|
+
def random_tmp_file(data = nil)
|
66
|
+
"/tmp/#{generate_random_file_name data}"
|
67
|
+
end
|
68
|
+
|
66
69
|
# Helper for some mysql tasks
|
67
70
|
def mysql_credentials_formatted(mysql_credentials)
|
68
71
|
return <<-EOS
|
@@ -148,8 +148,6 @@ Capistrano::Configuration.instance(:must_exist).load do
|
|
148
148
|
|
149
149
|
desc "Import a database dump"
|
150
150
|
task :import_db_dump, :roles => :db, :except => { :no_release => true } do
|
151
|
-
on_rollback { run "rm -f /tmp/#{mysql_db_name}_dump.sql" }
|
152
|
-
|
153
151
|
mysql_credentials = fetch :mysql_credentials
|
154
152
|
mysql_db_name = fetch :mysql_db_name
|
155
153
|
|
@@ -161,12 +159,18 @@ Capistrano::Configuration.instance(:must_exist).load do
|
|
161
159
|
exit 1
|
162
160
|
else
|
163
161
|
# The database dump name
|
164
|
-
dump_sql_file = ARGV
|
162
|
+
dump_sql_file = ARGV[argv_file_index]
|
163
|
+
# Read the dump
|
164
|
+
mysql_dump = File.read(dump_sql_file)
|
165
|
+
# Generate a random file
|
166
|
+
random_file = random_tmp_file mysql_dump
|
167
|
+
# Add a rollback hook
|
168
|
+
on_rollback { run "rm -f #{random_file}" }
|
165
169
|
|
166
170
|
if mysql_credentials.present?
|
167
171
|
drop_db
|
168
172
|
create_db
|
169
|
-
put File.read(dump_sql_file),
|
173
|
+
put File.read(dump_sql_file), random_file
|
170
174
|
|
171
175
|
run <<-CMD
|
172
176
|
mysql \
|
@@ -175,11 +179,11 @@ Capistrano::Configuration.instance(:must_exist).load do
|
|
175
179
|
--password='#{mysql_credentials[:pass]}' \
|
176
180
|
--default-character-set=utf8 \
|
177
181
|
'#{mysql_db_name}' < \
|
178
|
-
|
182
|
+
#{random_file}
|
179
183
|
CMD
|
180
184
|
|
181
185
|
run <<-CMD
|
182
|
-
rm -f '
|
186
|
+
rm -f '#{random_file}'
|
183
187
|
CMD
|
184
188
|
|
185
189
|
exit 0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capistrano-exts
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.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: 2011-09-
|
12
|
+
date: 2011-09-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: capistrano
|
16
|
-
requirement: &
|
16
|
+
requirement: &2152783480 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 2.8.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2152783480
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: i18n
|
27
|
-
requirement: &
|
27
|
+
requirement: &2152683500 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.6.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2152683500
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: activesupport
|
38
|
-
requirement: &
|
38
|
+
requirement: &2152629920 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 3.1.0
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2152629920
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: guard
|
49
|
-
requirement: &
|
49
|
+
requirement: &2152451100 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 0.6.2
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2152451100
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: guard-bundler
|
60
|
-
requirement: &
|
60
|
+
requirement: &2152414620 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 0.1.3
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2152414620
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: guard-rspec
|
71
|
-
requirement: &
|
71
|
+
requirement: &2156285880 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.4.3
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2156285880
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rspec
|
82
|
-
requirement: &
|
82
|
+
requirement: &2151922700 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,7 +87,7 @@ dependencies:
|
|
87
87
|
version: 2.6.0
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *2151922700
|
91
91
|
description: Handy extensions for Capistrano
|
92
92
|
email:
|
93
93
|
- wael.nasreddine@gmail.com
|