magic_recipes_two 0.0.17 → 0.0.18
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
    CHANGED
    
    | @@ -1,15 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 | 
            -
             | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
             | 
| 5 | 
            -
              data.tar.gz: !binary |-
         | 
| 6 | 
            -
                ZmRjOTQyNzkwYmQyYmY3YTM1MGRjYWIxNzI0NmRmNjcwNTk3Yzg2MQ==
         | 
| 2 | 
            +
            SHA1:
         | 
| 3 | 
            +
              metadata.gz: 0cfe32634c619b16b956e5834a1dc55e92884fcc
         | 
| 4 | 
            +
              data.tar.gz: 612a92fbc119c1e0a34364e90359ace9891c593a
         | 
| 7 5 | 
             
            SHA512:
         | 
| 8 | 
            -
              metadata.gz:  | 
| 9 | 
            -
             | 
| 10 | 
            -
                OGM2NzFmYmU3ZGZkY2EyYmRlNWZiYTE2NzZkN2ZjYjk3NGUyNTU2MWVkZjEw
         | 
| 11 | 
            -
                MTZiYzg1M2IxZTE1NjA2NDU2NzYwMTYxOTQ2OGViYTEyNGVhNDY=
         | 
| 12 | 
            -
              data.tar.gz: !binary |-
         | 
| 13 | 
            -
                NjI0YWIyZmRiOTViYTUzNmY5NjhiYTI5NDhiYTNkM2U5ZmM5YjVhOWNhMDY4
         | 
| 14 | 
            -
                OGE5NjY4OGFjN2U1M2RmOTVkZjdiNjlkNzU1OGRiZjRjZGQ3ODQ1YmU0M2Rj
         | 
| 15 | 
            -
                MGRlYmRmMmQwYjBlMDE5NGM1ZGMzYzAyZTg4NDUyY2U0MTI3NDI=
         | 
| 6 | 
            +
              metadata.gz: d5e9d6e2ff202c97130665610cd8cca8fe04b957c6d6854e87c11f37e1ef657f911ed0dc4661f616fd66a2ed997f66e66ba481ac0de5c258c382cc88844570e1
         | 
| 7 | 
            +
              data.tar.gz: 786e03fafa10c2f9a77db94ad15db46d756e58448f0f85e1cbccf1a76ea9e053f2ef66b397bfc2e7d41038d2c6883eaa5f173165de67355064c443e43f7c384c
         | 
| @@ -4,23 +4,46 @@ include Capistrano::MagicRecipes::BaseHelpers | |
| 4 4 |  | 
| 5 5 | 
             
            namespace :load do
         | 
| 6 6 | 
             
              task :defaults do
         | 
| 7 | 
            -
                set :nginx_domains, | 
| 8 | 
            -
                set : | 
| 9 | 
            -
                set : | 
| 10 | 
            -
                set : | 
| 11 | 
            -
                set : | 
| 12 | 
            -
                set : | 
| 13 | 
            -
                set : | 
| 14 | 
            -
                set : | 
| 15 | 
            -
                set : | 
| 16 | 
            -
                set : | 
| 17 | 
            -
                set : | 
| 18 | 
            -
                set : | 
| 19 | 
            -
                set : | 
| 20 | 
            -
                set : | 
| 21 | 
            -
                set : | 
| 7 | 
            +
                set :nginx_domains,               -> { [] }
         | 
| 8 | 
            +
                set :nginx_major_domain,          -> { false }
         | 
| 9 | 
            +
                set :nginx_remove_www,            -> { true }
         | 
| 10 | 
            +
                set :default_site,                -> { false }
         | 
| 11 | 
            +
                set :app_instances,               -> { 1 }
         | 
| 12 | 
            +
                set :nginx_service_path,          -> { 'service nginx' }
         | 
| 13 | 
            +
                set :nginx_roles,                 -> { :web }
         | 
| 14 | 
            +
                set :nginx_log_path,              -> { "#{shared_path}/log" }
         | 
| 15 | 
            +
                set :nginx_root_path,             -> { "/etc/nginx" }
         | 
| 16 | 
            +
                set :nginx_static_dir,            -> { "public" }
         | 
| 17 | 
            +
                set :nginx_sites_enabled,         -> { "sites-enabled" }
         | 
| 18 | 
            +
                set :nginx_sites_available,       -> { "sites-available" }
         | 
| 19 | 
            +
                set :nginx_template,              -> { :default }
         | 
| 20 | 
            +
                set :nginx_use_ssl,               -> { false }
         | 
| 21 | 
            +
                set :nginx_ssl_certificate,       -> { "#{fetch(:application)}.crt" }
         | 
| 22 | 
            +
                set :nginx_ssl_certificate_path,  -> { '/etc/ssl/certs' }
         | 
| 23 | 
            +
                set :nginx_ssl_certificate_key,   -> { "#{fetch(:application)}.crt" }
         | 
| 22 24 | 
             
                set :nginx_ssl_certificate_key_path, -> { '/etc/ssl/private' }
         | 
| 23 | 
            -
                set :app_server_ip, | 
| 25 | 
            +
                set :app_server_ip,               -> { "127.0.0.1" }
         | 
| 26 | 
            +
                ## NginX Proxy-Caching
         | 
| 27 | 
            +
                # Cache Rails
         | 
| 28 | 
            +
                set :proxy_cache_rails,           -> { false }
         | 
| 29 | 
            +
                set :proxy_cache_rails_directory, -> { "#{shared_path}/tmp/proxy_cache/rails" }
         | 
| 30 | 
            +
                set :proxy_cache_rails_levels,    -> { "1:2" }
         | 
| 31 | 
            +
                set :proxy_cache_rails_name,      -> { "RAILS_#{fetch(:application)}_#{fetch(:stage)}_CACHE" }
         | 
| 32 | 
            +
                set :proxy_cache_rails_size,      -> { "4m" }
         | 
| 33 | 
            +
                set :proxy_cache_rails_time,      -> { "24h" }
         | 
| 34 | 
            +
                set :proxy_cache_rails_max,       -> { "1g" }
         | 
| 35 | 
            +
                set :proxy_cache_rails_200,       -> { false }
         | 
| 36 | 
            +
                set :proxy_cache_rails_404,       -> { "60m" }
         | 
| 37 | 
            +
                set :proxy_cache_rails_stale,     -> { ["error", "timeout", "invalid_header", "updating"] }
         | 
| 38 | 
            +
                # Cache Media (Dragonfly)
         | 
| 39 | 
            +
                set :proxy_cache_media,           -> { false }
         | 
| 40 | 
            +
                set :proxy_cache_media_path,      -> { "media" }
         | 
| 41 | 
            +
                set :proxy_cache_media_directory, -> { "#{shared_path}/tmp/proxy_cache/media" }
         | 
| 42 | 
            +
                set :proxy_cache_media_levels,    -> { "1:2" }
         | 
| 43 | 
            +
                set :proxy_cache_media_name,      -> { "MEDIA_#{fetch(:application)}_#{fetch(:stage)}_CACHE" }
         | 
| 44 | 
            +
                set :proxy_cache_media_size,      -> { "2m" }
         | 
| 45 | 
            +
                set :proxy_cache_media_time,      -> { "48h" }
         | 
| 46 | 
            +
                set :proxy_cache_media_max,       -> { "1g" }
         | 
| 24 47 | 
             
              end
         | 
| 25 48 | 
             
            end
         | 
| 26 49 |  | 
| @@ -47,6 +70,8 @@ namespace :nginx do | |
| 47 70 | 
             
              after 'deploy:check', nil do
         | 
| 48 71 | 
             
                on release_roles fetch(:nginx_roles) do
         | 
| 49 72 | 
             
                  execute :mkdir, '-pv', fetch(:nginx_log_path)
         | 
| 73 | 
            +
                  execute :mkdir, '-pv', fetch(:proxy_cache_rails_path)   if fetch(:proxy_cache_rails)
         | 
| 74 | 
            +
                  execute :mkdir, '-pv', fetch(:proxy_cache_media_path)   if fetch(:proxy_cache_media)
         | 
| 50 75 | 
             
                end
         | 
| 51 76 | 
             
              end
         | 
| 52 77 |  | 
| @@ -1,24 +1,48 @@ | |
| 1 | 
            +
            ###
         | 
| 2 | 
            +
            ### HTTP-Config generated with magic_recipes_two at: <%= Time.now.strftime("%Y-%m-%d .. %H:%M .. %Z") %>
         | 
| 3 | 
            +
            ###
         | 
| 4 | 
            +
            <% joiner = "\n                        " %>
         | 
| 1 5 | 
             
            upstream thin_<%= fetch(:application) %>_<%= fetch(:stage) %>_cluster {
         | 
| 2 6 | 
             
              <% fetch(:app_instances).to_i.times do |i| %>
         | 
| 3 | 
            -
              server | 
| 7 | 
            +
              server            unix:/tmp/thin.<%= fetch(:application) %>.<%= fetch(:stage) %>.<%= i %>.sock 
         | 
| 8 | 
            +
                                max_fails=1 
         | 
| 9 | 
            +
                                fail_timeout=15s;
         | 
| 4 10 | 
             
              <% end %>
         | 
| 5 11 | 
             
            }
         | 
| 6 12 |  | 
| 13 | 
            +
            <% if fetch(:proxy_cache_rails) %>
         | 
| 14 | 
            +
            # Proxy-Caching - Rails - Sites
         | 
| 15 | 
            +
            proxy_cache_path    <%= fetch(:proxy_cache_rails_directory) %> 
         | 
| 16 | 
            +
                                levels=<%= fetch(:proxy_cache_rails_levels) %> 
         | 
| 17 | 
            +
                                keys_zone=<%= fetch(:proxy_cache_rails_name) %>:<%= fetch(:proxy_cache_rails_size) %> 
         | 
| 18 | 
            +
                                inactive=<%= fetch(:proxy_cache_rails_keep) %> 
         | 
| 19 | 
            +
                                max_size=<%= fetch(:proxy_cache_rails_max) %>;
         | 
| 20 | 
            +
             | 
| 21 | 
            +
            <% end %><% if fetch(:proxy_cache_media) %>
         | 
| 22 | 
            +
            # Proxy-Caching - Media (Dragonfly) - Files
         | 
| 23 | 
            +
            proxy_cache_path    <%= fetch(:proxy_cache_media_directory) %> 
         | 
| 24 | 
            +
                                levels=<%= fetch(:proxy_cache_media_levels) %> 
         | 
| 25 | 
            +
                                keys_zone=<%= fetch(:proxy_cache_media_name) %>:<%= fetch(:proxy_cache_media_size) %> 
         | 
| 26 | 
            +
                                inactive=<%= fetch(:proxy_cache_media_keep) %> 
         | 
| 27 | 
            +
                                max_size=<%= fetch(:proxy_cache_media_max) %>;
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            <% end %>
         | 
| 30 | 
            +
             | 
| 7 31 | 
             
            # HTTP Server
         | 
| 8 32 | 
             
            <% if fetch(:nginx_use_ssl) %>
         | 
| 9 33 | 
             
            <% if fetch(:nginx_major_domain) %>
         | 
| 10 34 | 
             
            server {
         | 
| 11 | 
            -
              listen | 
| 12 | 
            -
              server_name | 
| 13 | 
            -
             | 
| 35 | 
            +
              listen                80<%= ' default_server' if fetch(:default_site) %>;
         | 
| 36 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| d.gsub(/^\*?\./, "") }.join(joiner) %>
         | 
| 37 | 
            +
                                    <%= ".#{fetch(:nginx_major_domain).gsub(/^\*?\./, "")}" %>;
         | 
| 14 38 |  | 
| 15 39 | 
             
              # return 301 https://<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 16 40 |  | 
| 17 41 | 
             
              location ^~ /assets/ico/ {
         | 
| 18 | 
            -
                root | 
| 19 | 
            -
                gzip_static | 
| 20 | 
            -
                expires | 
| 21 | 
            -
                add_header | 
| 42 | 
            +
                root                <%= current_path %>/public;
         | 
| 43 | 
            +
                gzip_static         on;
         | 
| 44 | 
            +
                expires             max;
         | 
| 45 | 
            +
                add_header          Cache-Control public;
         | 
| 22 46 | 
             
              }
         | 
| 23 47 | 
             
              location / {
         | 
| 24 48 | 
             
                return 301 https://<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| @@ -27,17 +51,17 @@ server { | |
| 27 51 | 
             
            }
         | 
| 28 52 | 
             
            server {
         | 
| 29 53 | 
             
              listen 80;
         | 
| 30 | 
            -
              server_name | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 54 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| "~^(?<sub>\w+)#{ Regexp.escape( ".#{d.gsub(/^\*?\./, "")}" ) }" }.join(joiner) %>
         | 
| 55 | 
            +
                                    <%= "~^#{Regexp.escape("www.")}(?<sub>\w+)#{ Regexp.escape( ".#{fetch(:nginx_major_domain).gsub(/^\*?\./, "")}" ) }" %>
         | 
| 56 | 
            +
                                    <%= "~^(?<sub>\w+)#{ Regexp.escape( ".#{fetch(:nginx_major_domain).gsub(/^\*?\./, "")}" ) }" %>;
         | 
| 33 57 |  | 
| 34 58 | 
             
              # return 301 https://$sub.<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 35 59 |  | 
| 36 60 | 
             
              location ^~ /assets/ico/ {
         | 
| 37 | 
            -
                root | 
| 38 | 
            -
                gzip_static | 
| 39 | 
            -
                expires | 
| 40 | 
            -
                add_header | 
| 61 | 
            +
                root                <%= current_path %>/public;
         | 
| 62 | 
            +
                gzip_static         on;
         | 
| 63 | 
            +
                expires             max;
         | 
| 64 | 
            +
                add_header          Cache-Control public;
         | 
| 41 65 | 
             
              }
         | 
| 42 66 | 
             
              location / {
         | 
| 43 67 | 
             
                return 301 https://$sub.<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| @@ -46,15 +70,15 @@ server { | |
| 46 70 | 
             
            }
         | 
| 47 71 | 
             
            <% else %>
         | 
| 48 72 | 
             
            server {
         | 
| 49 | 
            -
              listen | 
| 50 | 
            -
              server_name | 
| 73 | 
            +
              listen                80;
         | 
| 74 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| d[0] == "." ? d : ".#{d}"}.join(joiner) %>;
         | 
| 51 75 | 
             
              # return 301 https://$host$request_uri;
         | 
| 52 76 |  | 
| 53 77 | 
             
              location ^~ /assets/ico/ {
         | 
| 54 | 
            -
                root | 
| 55 | 
            -
                gzip_static | 
| 56 | 
            -
                expires | 
| 57 | 
            -
                add_header | 
| 78 | 
            +
                root                <%= current_path %>/public;
         | 
| 79 | 
            +
                gzip_static         on;
         | 
| 80 | 
            +
                expires             max;
         | 
| 81 | 
            +
                add_header          Cache-Control public;
         | 
| 58 82 | 
             
              }
         | 
| 59 83 | 
             
              location / {
         | 
| 60 84 | 
             
                return 301 https://$host$request_uri;
         | 
| @@ -68,60 +92,68 @@ server { | |
| 68 92 | 
             
            <% if fetch(:nginx_use_ssl) %>
         | 
| 69 93 | 
             
            # ssl-domain
         | 
| 70 94 | 
             
            server {
         | 
| 71 | 
            -
              listen | 
| 72 | 
            -
              server_name | 
| 95 | 
            +
              listen                443;
         | 
| 96 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| d.gsub(/^\*?\./, "") }.join(joiner) %>;
         | 
| 73 97 | 
             
              return 301 https://<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 74 98 | 
             
              ssl on;
         | 
| 75 | 
            -
              ssl_certificate | 
| 76 | 
            -
              ssl_certificate_key | 
| 99 | 
            +
              ssl_certificate       <%= fetch(:nginx_ssl_certificate_path) %>/<%= fetch(:nginx_old_ssl_certificate) %>;
         | 
| 100 | 
            +
              ssl_certificate_key   <%= fetch(:nginx_ssl_certificate_key_path) %>/<%= fetch(:nginx_old_ssl_certificate_key) %>;
         | 
| 77 101 | 
             
            }
         | 
| 78 102 | 
             
            # ssl-with-subdomain
         | 
| 79 103 | 
             
            server {
         | 
| 80 | 
            -
              listen | 
| 81 | 
            -
              server_name | 
| 104 | 
            +
              listen                443;
         | 
| 105 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| "~^(?<sub>\w+)\.#{ Regexp.escape( d.gsub(/^\*?\./, "") ) }" }.join(joiner) %>;
         | 
| 82 106 | 
             
              return 301 https://$sub.<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 83 107 | 
             
              ssl on;
         | 
| 84 | 
            -
              ssl_certificate | 
| 85 | 
            -
              ssl_certificate_key | 
| 108 | 
            +
              ssl_certificate       <%= fetch(:nginx_ssl_certificate_path) %>/<%= fetch(:nginx_old_ssl_certificate) %>;
         | 
| 109 | 
            +
              ssl_certificate_key   <%= fetch(:nginx_ssl_certificate_key_path) %>/<%= fetch(:nginx_old_ssl_certificate_key) %>;
         | 
| 86 110 | 
             
            }
         | 
| 87 111 | 
             
            <% else %>
         | 
| 88 112 | 
             
            server {
         | 
| 89 | 
            -
              listen | 
| 90 | 
            -
              server_name | 
| 113 | 
            +
              listen                80;
         | 
| 114 | 
            +
              server_name           
         | 
| 115 | 
            +
                                    
         | 
| 116 | 
            +
              <%= Array(fetch(:nginx_domains)).map{ |d| d.gsub(/^\*?\./, "") }.join(joiner) %>;
         | 
| 91 117 | 
             
              return 301 http://<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 92 118 | 
             
            }
         | 
| 93 119 | 
             
            server {
         | 
| 94 | 
            -
              listen | 
| 95 | 
            -
              server_name | 
| 120 | 
            +
              listen                80;
         | 
| 121 | 
            +
              server_name           <%= Array(fetch(:nginx_domains)).map{ |d| "~^(?<sub>\w+)\.#{ Regexp.escape( d.gsub(/^\*?\./, "") ) }" }.join(joiner) %>;
         | 
| 96 122 | 
             
              return 301 http://$sub.<%= fetch(:nginx_major_domain).gsub(/^\*?\./, "") %>$request_uri;
         | 
| 97 123 | 
             
            }
         | 
| 98 124 | 
             
            <% end %>
         | 
| 99 125 | 
             
            <% end %>
         | 
| 100 126 |  | 
| 127 | 
            +
             | 
| 128 | 
            +
             | 
| 129 | 
            +
             | 
| 130 | 
            +
             | 
| 101 131 | 
             
            server {
         | 
| 102 132 | 
             
            <% if fetch(:nginx_use_ssl) %>
         | 
| 103 | 
            -
              listen | 
| 104 | 
            -
              ssl | 
| 105 | 
            -
              ssl_certificate | 
| 106 | 
            -
              ssl_certificate_key | 
| 133 | 
            +
              listen                443<%= ' default_server ssl' if fetch(:default_site) %>;
         | 
| 134 | 
            +
              ssl                   on;
         | 
| 135 | 
            +
              ssl_certificate       <%= fetch(:nginx_ssl_certificate_path) %>/<%= fetch(:nginx_ssl_certificate) %>;
         | 
| 136 | 
            +
              ssl_certificate_key   <%= fetch(:nginx_ssl_certificate_key_path) %>/<%= fetch(:nginx_ssl_certificate_key) %>;
         | 
| 107 137 | 
             
            <% else %>
         | 
| 108 | 
            -
              listen | 
| 138 | 
            +
              listen                80<%= ' default deferred' if fetch(:default_site) %>;
         | 
| 109 139 | 
             
            <% end %>
         | 
| 110 140 | 
             
              <% if fetch(:nginx_major_domain) %>
         | 
| 111 | 
            -
              server_name | 
| 141 | 
            +
              server_name           <%= ".#{fetch(:nginx_major_domain).gsub(/^\*?\./, "")}" %>;
         | 
| 112 142 | 
             
              <% else %>
         | 
| 113 | 
            -
              server_name | 
| 143 | 
            +
              server_name           <%= Array( fetch(:nginx_domains) ).join(joiner) %>;
         | 
| 114 144 | 
             
              <% end %>
         | 
| 115 145 |  | 
| 146 | 
            +
              <% if fetch(:nginx_remove_www) %>
         | 
| 116 147 | 
             
              if ($host ~* ^www\.(.*)) {
         | 
| 117 148 | 
             
                set $host_without_www $1;
         | 
| 118 149 | 
             
                rewrite ^(.*) http://$host_without_www$1 permanent;
         | 
| 119 150 | 
             
              }
         | 
| 151 | 
            +
              <% end %>
         | 
| 120 152 |  | 
| 121 | 
            -
              root | 
| 153 | 
            +
              root                  <%= current_path %>/public;
         | 
| 122 154 |  | 
| 123 | 
            -
              access_log | 
| 124 | 
            -
              error_log | 
| 155 | 
            +
              access_log            <%= fetch(:nginx_log_path) %>/nginx-access.log;
         | 
| 156 | 
            +
              error_log             <%= fetch(:nginx_log_path) %>/nginx-error.log;
         | 
| 125 157 |  | 
| 126 158 | 
             
              error_page 404 /404.html;
         | 
| 127 159 | 
             
              location /404.html { root <%= fetch(:deploy_to) %>/current/<%= fetch(:nginx_static_dir) %>; }
         | 
| @@ -129,26 +161,51 @@ server { | |
| 129 161 | 
             
              error_page 500 502 503 504 /500.html;
         | 
| 130 162 | 
             
              location /500.html { root <%= fetch  (:deploy_to) %>/current/<%= fetch(:nginx_static_dir) %>; }
         | 
| 131 163 |  | 
| 132 | 
            -
              client_max_body_size | 
| 133 | 
            -
              keepalive_timeout | 
| 164 | 
            +
              client_max_body_size  4G;
         | 
| 165 | 
            +
              keepalive_timeout     10;
         | 
| 134 166 |  | 
| 135 167 | 
             
              location ^~ /assets/ {
         | 
| 136 | 
            -
                gzip_static | 
| 137 | 
            -
                expires | 
| 138 | 
            -
                add_header | 
| 168 | 
            +
                gzip_static         on;
         | 
| 169 | 
            +
                expires             max;
         | 
| 170 | 
            +
                add_header          Cache-Control     public;
         | 
| 139 171 | 
             
              }
         | 
| 140 172 |  | 
| 173 | 
            +
            <% if fetch(:proxy_cache_media) %>
         | 
| 174 | 
            +
              # Media-Path with NginX-Proxy-Cache
         | 
| 175 | 
            +
              location ^~ /<%= fetch(:proxy_cache_media_path) %>/ {
         | 
| 176 | 
            +
                auth_basic          off;
         | 
| 177 | 
            +
                proxy_cache         <%= fetch(:proxy_cache_media_name) %>;
         | 
| 178 | 
            +
                proxy_cache_lock    on;
         | 
| 179 | 
            +
                add_header          X-Cache-Status    $upstream_cache_status;
         | 
| 180 | 
            +
                proxy_cache_bypass  $http_bypass_proxy;
         | 
| 181 | 
            +
                proxy_pass          $scheme://thin_<%= fetch(:application) %>_<%= fetch(:stage) %>_cluster;
         | 
| 182 | 
            +
              }
         | 
| 183 | 
            +
            <% end %>
         | 
| 184 | 
            +
             | 
| 141 185 | 
             
              try_files $uri/index.html $uri @thin_<%= fetch(:application) %>_<%= fetch(:stage) %>;
         | 
| 142 186 |  | 
| 143 187 | 
             
              location @thin_<%= fetch(:application) %>_<%= fetch(:stage) %> {
         | 
| 144 | 
            -
                 | 
| 145 | 
            -
                proxy_set_header | 
| 146 | 
            -
                proxy_set_header | 
| 147 | 
            -
                proxy_set_header | 
| 148 | 
            -
             | 
| 149 | 
            -
                 | 
| 150 | 
            -
             | 
| 151 | 
            -
                 | 
| 152 | 
            -
                 | 
| 188 | 
            +
                # rewrite Headers for correct behavior
         | 
| 189 | 
            +
                proxy_set_header      X-Real-IP          $remote_addr;
         | 
| 190 | 
            +
                proxy_set_header      X-Forwarded-For    $proxy_add_x_forwarded_for;
         | 
| 191 | 
            +
                proxy_set_header      X-Forwarded-Proto  $scheme;
         | 
| 192 | 
            +
                proxy_set_header      Host               $host:$server_port;
         | 
| 193 | 
            +
                proxy_redirect        off;
         | 
| 194 | 
            +
                <% if fetch(:proxy_cache_rails) %>
         | 
| 195 | 
            +
                # cache rails actions (need public header)
         | 
| 196 | 
            +
                proxy_cache           <%= fetch(:proxy_cache_rails_name) %>;
         | 
| 197 | 
            +
                proxy_cache_lock      on;
         | 
| 198 | 
            +
                <% if fetch(:proxy_cache_rails_200) %>
         | 
| 199 | 
            +
                proxy_cache_valid     200 302           <%= fetch(:proxy_cache_rails_200) %>;
         | 
| 200 | 
            +
                <% end %>
         | 
| 201 | 
            +
                <% if fetch(:proxy_cache_rails_404) %>
         | 
| 202 | 
            +
                proxy_cache_valid     404               <%= fetch(:proxy_cache_rails_404) %>;
         | 
| 203 | 
            +
                <% end %>
         | 
| 204 | 
            +
                proxy_cache_use_stale <%= Array( fetch(:proxy_cache_rails_stale) ).join(" ") %>;
         | 
| 205 | 
            +
                proxy_cache_bypass    $http_bypass_proxy;
         | 
| 206 | 
            +
                add_header            X-Cache-Status    $upstream_cache_status;
         | 
| 207 | 
            +
                <% end %>
         | 
| 208 | 
            +
                # pass request to thin upstream
         | 
| 209 | 
            +
                proxy_pass            http://thin_<%= fetch(:application) %>_<%= fetch(:stage) %>_cluster;
         | 
| 153 210 | 
             
              }
         | 
| 154 211 | 
             
            }
         | 
    
        metadata
    CHANGED
    
    | @@ -1,111 +1,111 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: magic_recipes_two
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.18
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Torsten Wetzel
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2015- | 
| 11 | 
            +
            date: 2015-11-25 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rails
         | 
| 15 15 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 16 | 
             
                requirements:
         | 
| 17 | 
            -
                - -  | 
| 17 | 
            +
                - - ">="
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 19 | 
             
                    version: '3.2'
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 | 
            -
                - -  | 
| 24 | 
            +
                - - ">="
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 26 | 
             
                    version: '3.2'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: capistrano
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 | 
            -
                - -  | 
| 31 | 
            +
                - - ">="
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 33 | 
             
                    version: '3.2'
         | 
| 34 34 | 
             
              type: :runtime
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 | 
            -
                - -  | 
| 38 | 
            +
                - - ">="
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 40 | 
             
                    version: '3.2'
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              name: capistrano-bundler
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 44 | 
             
                requirements:
         | 
| 45 | 
            -
                - -  | 
| 45 | 
            +
                - - ">="
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 47 | 
             
                    version: '1.1'
         | 
| 48 48 | 
             
              type: :runtime
         | 
| 49 49 | 
             
              prerelease: false
         | 
| 50 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 51 | 
             
                requirements:
         | 
| 52 | 
            -
                - -  | 
| 52 | 
            +
                - - ">="
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 54 | 
             
                    version: '1.1'
         | 
| 55 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 56 | 
             
              name: capistrano-rails
         | 
| 57 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 58 | 
             
                requirements:
         | 
| 59 | 
            -
                - -  | 
| 59 | 
            +
                - - ">="
         | 
| 60 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 61 61 | 
             
                    version: '1.1'
         | 
| 62 62 | 
             
              type: :runtime
         | 
| 63 63 | 
             
              prerelease: false
         | 
| 64 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 65 | 
             
                requirements:
         | 
| 66 | 
            -
                - -  | 
| 66 | 
            +
                - - ">="
         | 
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 68 | 
             
                    version: '1.1'
         | 
| 69 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 70 | 
             
              name: rvm1-capistrano3
         | 
| 71 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 72 | 
             
                requirements:
         | 
| 73 | 
            -
                - -  | 
| 73 | 
            +
                - - ">="
         | 
| 74 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 75 75 | 
             
                    version: '1.2'
         | 
| 76 76 | 
             
              type: :runtime
         | 
| 77 77 | 
             
              prerelease: false
         | 
| 78 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 79 | 
             
                requirements:
         | 
| 80 | 
            -
                - -  | 
| 80 | 
            +
                - - ">="
         | 
| 81 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 82 | 
             
                    version: '1.2'
         | 
| 83 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 84 84 | 
             
              name: capistrano-postgresql
         | 
| 85 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 86 86 | 
             
                requirements:
         | 
| 87 | 
            -
                - -  | 
| 87 | 
            +
                - - ">="
         | 
| 88 88 | 
             
                  - !ruby/object:Gem::Version
         | 
| 89 89 | 
             
                    version: '4.2'
         | 
| 90 90 | 
             
              type: :runtime
         | 
| 91 91 | 
             
              prerelease: false
         | 
| 92 92 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 93 93 | 
             
                requirements:
         | 
| 94 | 
            -
                - -  | 
| 94 | 
            +
                - - ">="
         | 
| 95 95 | 
             
                  - !ruby/object:Gem::Version
         | 
| 96 96 | 
             
                    version: '4.2'
         | 
| 97 97 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 98 98 | 
             
              name: sqlite3
         | 
| 99 99 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 100 100 | 
             
                requirements:
         | 
| 101 | 
            -
                - -  | 
| 101 | 
            +
                - - ">="
         | 
| 102 102 | 
             
                  - !ruby/object:Gem::Version
         | 
| 103 103 | 
             
                    version: '0'
         | 
| 104 104 | 
             
              type: :development
         | 
| 105 105 | 
             
              prerelease: false
         | 
| 106 106 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 107 107 | 
             
                requirements:
         | 
| 108 | 
            -
                - -  | 
| 108 | 
            +
                - - ">="
         | 
| 109 109 | 
             
                  - !ruby/object:Gem::Version
         | 
| 110 110 | 
             
                    version: '0'
         | 
| 111 111 | 
             
            description: MagicRecipesTwo contains our most used deployment recipes for Capistrano-3.
         | 
| @@ -165,17 +165,17 @@ require_paths: | |
| 165 165 | 
             
            - lib
         | 
| 166 166 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 167 167 | 
             
              requirements:
         | 
| 168 | 
            -
              - -  | 
| 168 | 
            +
              - - ">="
         | 
| 169 169 | 
             
                - !ruby/object:Gem::Version
         | 
| 170 170 | 
             
                  version: '0'
         | 
| 171 171 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 172 172 | 
             
              requirements:
         | 
| 173 | 
            -
              - -  | 
| 173 | 
            +
              - - ">="
         | 
| 174 174 | 
             
                - !ruby/object:Gem::Version
         | 
| 175 175 | 
             
                  version: '0'
         | 
| 176 176 | 
             
            requirements: []
         | 
| 177 177 | 
             
            rubyforge_project: 
         | 
| 178 | 
            -
            rubygems_version: 2.4. | 
| 178 | 
            +
            rubygems_version: 2.4.5
         | 
| 179 179 | 
             
            signing_key: 
         | 
| 180 180 | 
             
            specification_version: 4
         | 
| 181 181 | 
             
            summary: Some recipes for rails-4 and capistrano-3.
         |