capistrano-stretcher 0.1.0 → 0.2.0
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.
- checksums.yaml +4 -4
- data/README.md +16 -5
- data/capistrano-stretcher.gemspec +1 -1
- data/lib/capistrano/tasks/stretcher.rake +5 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e8e5f3a71942a87223377de95f967dafc0c6d98a
|
4
|
+
data.tar.gz: beaf3211fa458ac234f6c29ce9e7d7279d23f7ae
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 395fe44311ad2536a4feaeaf34f3ed6d717dba1b051c2bf38cd7db7bc4aac35bc636fc006f6d6e99fc351e177180c12e7d98bb5171975a9bfb4b6131a966b363
|
7
|
+
data.tar.gz: 8020d46593226d2f79b09b8a888b9f53b7b178379c8c747e70b4b96bf340033c07609c114defa4b641bac94736d26ae9e70cbef2c4a1626223ff5ff011a789a8
|
data/README.md
CHANGED
@@ -20,7 +20,7 @@ Or install it yourself as:
|
|
20
20
|
|
21
21
|
## Requirements
|
22
22
|
|
23
|
-
capistrano-stretcher requires target server for building to application assets.
|
23
|
+
capistrano-stretcher requires target server for building to application assets. This server should be installed the following packages:
|
24
24
|
|
25
25
|
* git
|
26
26
|
* rsync
|
@@ -31,14 +31,20 @@ capistrano-stretcher requires target server for building to application assets.
|
|
31
31
|
* aws-cli
|
32
32
|
* consul
|
33
33
|
|
34
|
-
target server
|
34
|
+
target server builds assets, uploads assets to AWS S3 and invokes `consul event` automatically. So target server can access AWS s3 via aws-cli and join your deployment consul cluster.
|
35
35
|
|
36
36
|
## Usage
|
37
37
|
|
38
|
-
You need to add `require "capistrano/stretcher" to Capfile
|
38
|
+
You need to add `require "capistrano/stretcher"` to Capfile and add `config/deploy.rb` following variables:
|
39
39
|
|
40
|
-
```
|
40
|
+
```ruby
|
41
41
|
role :build, ['your-target-server.lan'], :no_release => true
|
42
|
+
|
43
|
+
# If your build server is accessible to consul cluster, then set the same server
|
44
|
+
# If different, set a server that can access consul cluster
|
45
|
+
# just to kick consul event!
|
46
|
+
role :consul, ['your-target-server.lan'], :no_release => true
|
47
|
+
|
42
48
|
set :application, 'your-application'
|
43
49
|
set :deploy_to, '/var/www'
|
44
50
|
set :deploy_roles, 'www,batch'
|
@@ -79,7 +85,12 @@ and invoke
|
|
79
85
|
* `consul event -name deploy_www_staging s3://.../manifest_www.yml`
|
80
86
|
* `consul event -name deploy_batch_staging s3://.../manifest_batch.yml`
|
81
87
|
|
82
|
-
with `cap staging stretcher:deploy` command on target server. When it's invoked with `cap production stretcher:deploy`, capistrano-
|
88
|
+
with `cap staging stretcher:deploy` command on target server. When it's invoked with `cap production stretcher:deploy`, capistrano-stretcher replace suffix `staging` to `production`.
|
89
|
+
|
90
|
+
## Related Projects
|
91
|
+
|
92
|
+
* [capistrano-stretcher-rails](https://github.com/pepabo/capistrano-stretcher-rails)
|
93
|
+
* [capistrano-stretcher-npm](https://github.com/pepabo/capistrano-stretcher-npm)
|
83
94
|
|
84
95
|
## Development
|
85
96
|
|
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "capistrano-stretcher"
|
7
|
-
spec.version = "0.
|
7
|
+
spec.version = "0.2.0"
|
8
8
|
spec.authors = ["SHIBATA Hiroshi", "Uchio Kondo"]
|
9
9
|
spec.email = ["hsbt@ruby-lang.org", "udzura@udzura.jp"]
|
10
10
|
|
@@ -29,6 +29,10 @@ namespace :stretcher do
|
|
29
29
|
roles(fetch(:application_builder_roles, [:build]))
|
30
30
|
end
|
31
31
|
|
32
|
+
def consul_roles
|
33
|
+
roles(fetch(:consul_roles, [:consul]))
|
34
|
+
end
|
35
|
+
|
32
36
|
task :mark_deploying do
|
33
37
|
set :deploying, true
|
34
38
|
end
|
@@ -139,7 +143,7 @@ namespace :stretcher do
|
|
139
143
|
desc "Kick the stretcher's deploy event via Consul"
|
140
144
|
task :kick_stretcher do
|
141
145
|
fetch(:deploy_roles).split(',').each do |target_role|
|
142
|
-
on
|
146
|
+
on consul_roles do
|
143
147
|
opts = ["-name deploy_#{target_role}_#{fetch(:stage)}"]
|
144
148
|
opts << "-node #{ENV['TARGET_HOSTS']}" if ENV['TARGET_HOSTS']
|
145
149
|
opts << "#{fetch(:manifest_path)}/manifest_#{target_role}_#{fetch(:stage)}.yml"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capistrano-stretcher
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SHIBATA Hiroshi
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2016-03-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: capistrano
|
@@ -107,9 +107,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
107
107
|
version: '0'
|
108
108
|
requirements: []
|
109
109
|
rubyforge_project:
|
110
|
-
rubygems_version: 2.
|
110
|
+
rubygems_version: 2.2.3
|
111
111
|
signing_key:
|
112
112
|
specification_version: 4
|
113
113
|
summary: capistrano task for stretcher.
|
114
114
|
test_files: []
|
115
|
-
has_rdoc:
|