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: 
         
     |