fast_git_deploy 0.2.1 → 0.2.2
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/Gemfile.lock +1 -1
- data/README.rdoc +29 -16
- data/lib/fast_git_deploy/recipes/fast_git_deploy/setup.rb +2 -2
- data/lib/fast_git_deploy/version.rb +1 -1
- metadata +2 -2
data/Gemfile.lock
CHANGED
data/README.rdoc
CHANGED
@@ -1,36 +1,49 @@
|
|
1
1
|
= fast_git_deploy
|
2
2
|
|
3
|
+
fast_git_deploy is a series of cap tasks to speed up capistrano deploys by using git as the version source instead of checking out + symlinking on each release.
|
4
|
+
|
5
|
+
The process is used internally at github and is described in http://github.com/blog/470-deployment-script-spring-cleaning
|
6
|
+
|
7
|
+
Here's some perf stats (taken from a while back on a very, very slow machine):
|
8
|
+
|
3
9
|
Before (with fast_remote_cache deploy strategy):
|
4
10
|
|
5
|
-
|
11
|
+
$ time cap staging deploy:update
|
6
12
|
|
7
|
-
|
13
|
+
...
|
8
14
|
|
9
|
-
|
10
|
-
|
11
|
-
|
15
|
+
real 1m56.811s
|
16
|
+
user 0m0.560s
|
17
|
+
sys 0m0.118s
|
12
18
|
|
13
19
|
|
14
20
|
After:
|
15
21
|
|
16
|
-
|
22
|
+
$ time cap staging deploy:update
|
23
|
+
|
24
|
+
...
|
25
|
+
|
26
|
+
real 0m19.987s
|
27
|
+
user 0m0.538s
|
28
|
+
sys 0m0.110s
|
29
|
+
|
30
|
+
== Install it into your app:
|
17
31
|
|
18
|
-
|
32
|
+
Gemfile:
|
19
33
|
|
20
|
-
|
21
|
-
|
22
|
-
sys 0m0.110s
|
34
|
+
gem 'capistrano'
|
35
|
+
gem 'fast_git_deploy'
|
23
36
|
|
24
|
-
|
37
|
+
config/deploy.rb
|
25
38
|
|
26
|
-
|
39
|
+
require 'fast_git_deploy'
|
27
40
|
|
28
41
|
== Switch an existing project:
|
29
42
|
|
30
|
-
|
43
|
+
cap deploy:warm
|
31
44
|
|
32
45
|
== Setup a new project:
|
33
46
|
|
34
|
-
|
35
|
-
|
36
|
-
|
47
|
+
cap deploy:setup
|
48
|
+
cap deploy:cold
|
49
|
+
cap deploy
|
@@ -94,9 +94,9 @@ module FastGitDeploy
|
|
94
94
|
"rm -rf #{current_path}/log #{current_path}/public/system #{current_path}/tmp/pids",
|
95
95
|
"mkdir -p #{current_path}/public",
|
96
96
|
"mkdir -p #{current_path}/tmp",
|
97
|
-
"ln -s #{shared_path}/log
|
97
|
+
"ln -s #{shared_path}/log #{current_path}/log",
|
98
98
|
"ln -s #{shared_path}/system #{current_path}/public/system",
|
99
|
-
"ln -s #{shared_path}/pids
|
99
|
+
"ln -s #{shared_path}/tmp/pids #{current_path}/tmp/pids"
|
100
100
|
].join(" && ")
|
101
101
|
end
|
102
102
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fast_git_deploy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-04-14 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: The Fast Git Deploy Method - just a git reset --hard to update code
|
15
15
|
email:
|