diff --git a/config/deploy/sample_config_files/apache_passenger.conf b/config/deploy/sample_config_files/apache_passenger.conf deleted file mode 100644 index f97fc9b2a..000000000 --- a/config/deploy/sample_config_files/apache_passenger.conf +++ /dev/null @@ -1,19 +0,0 @@ - - - ServerName yourdomain.com - ServerAlias www.yourdomain.com - ServerAdmin webmaster@localhost - - DocumentRoot /path/to/deploy_to/current/public - - # RailsEnv production - - ErrorLog ${APACHE_LOG_DIR}/yourdomain.error.log - CustomLog ${APACHE_LOG_DIR}/yourdomain.access.log combined - - - Options FollowSymLinks - Require all granted - - - diff --git a/config/deploy/sample_config_files/apache_unicorn.conf b/config/deploy/sample_config_files/apache_unicorn.conf deleted file mode 100644 index 93aafec23..000000000 --- a/config/deploy/sample_config_files/apache_unicorn.conf +++ /dev/null @@ -1,31 +0,0 @@ - - - ServerAdmin admin@yourdomain.com - ServerName yourdomain.com - ServerAlias www.yourdomain.com - - DocumentRoot /path/to/deploy_to/current/public - - RewriteEngine On - - - BalancerMember http://127.0.0.1:5000 - - - # Redirect all non-static requests to thin - RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f - RewriteRule ^/(.*)$ balancer://unicornservers%{REQUEST_URI} [P,QSA,L] - - ProxyPass / balancer://unicornservers/ - ProxyPassReverse / balancer://unicornservers/ - ProxyPreserveHost on - - - Order deny,allow - Allow from all - - - ErrorLog ${APACHE_LOG_DIR}/yourdomain.error.log - CustomLog ${APACHE_LOG_DIR}/yourdomain.access.log combined - - diff --git a/config/deploy/sample_config_files/unicorn_init.sh b/config/deploy/sample_config_files/unicorn_init.sh deleted file mode 100644 index 1cef9110b..000000000 --- a/config/deploy/sample_config_files/unicorn_init.sh +++ /dev/null @@ -1,96 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: unicorn -# Required-Start: $local_fs $remote_fs $network $syslog -# Required-Stop: $local_fs $remote_fs $network $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: starts the unicorn web server -# Description: starts unicorn -### END INIT INFO - -set -e - -TIMEOUT=${TIMEOUT-60} -APP_ROOT=<%= current_path %> -PID_DIR=$APP_ROOT/tmp/pids -PID=$PID_DIR/unicorn.pid -CMD="cd $APP_ROOT; bundle exec unicorn -D -c /path/to/shared/config/unicorn.rb -E production" -AS_USER=deploy -set -u - -OLD_PIN="$PID.oldbin" - -sig () { - test -s "$PID" && kill -$1 `cat $PID` -} - -oldsig () { - test -s $OLD_PIN && kill -$1 `cat $OLD_PIN` -} - -workersig () { - workerpid="$APP_ROOT/tmp/pids/unicorn.$2.pid" - - test -s "$workerpid" && kill -$1 `cat $workerpid` -} - -run () { - if [ "$(id -un)" = "$AS_USER" ]; then - eval $1 - else - su -c "$1" - $AS_USER - fi -} - -case "$1" in -start) - sig 0 && echo >&2 "Already running" && exit 0 - run "$CMD" - ;; -stop) - sig QUIT && exit 0 - echo >&2 "Not running" - ;; -force-stop) - sig TERM && exit 0 - echo >&2 "Not running" - ;; -kill_worker) - workersig QUIT $2 && exit 0 - echo >&2 "Worker not running" - ;; -restart|reload) - sig USR2 && echo reloaded OK && exit 0 - echo >&2 "Couldn't reload, starting '$CMD' instead" - run "$CMD" - ;; -upgrade) - if sig USR2 && sleep 2 && sig 0 && oldsig QUIT - then - n=$TIMEOUT - while test -s $OLD_PIN && test $n -ge 0 - do - printf '.' && sleep 1 && n=$(( $n - 1 )) - done - echo - - if test $n -lt 0 && test -s $OLD_PIN - then - echo >&2 "$OLD_PIN still exists after $TIMEOUT seconds" - exit 1 - fi - exit 0 - fi - echo >&2 "Couldn't upgrade, starting '$CMD' instead" - run "$CMD" - ;; -reopen-logs) - sig USR1 - ;; -*) - echo >&2 "Usage: $0 " - exit 1 - ;; -esac diff --git a/config/deploy/shared/database.yml.erb b/config/deploy/shared/database.yml.erb deleted file mode 100644 index 2449ae6f8..000000000 --- a/config/deploy/shared/database.yml.erb +++ /dev/null @@ -1,10 +0,0 @@ -<%= fetch(:rails_env) %>: - adapter: postgresql - timeout: 5000 - encoding: unicode - reconnect: false - database: <%= "#{fetch(:application)}" %> - pool: 5 - username: - password: - host: <%= fetch(:db_server) %> diff --git a/config/deploy/shared/log_rotation.erb b/config/deploy/shared/log_rotation.erb deleted file mode 100755 index 7507de184..000000000 --- a/config/deploy/shared/log_rotation.erb +++ /dev/null @@ -1,11 +0,0 @@ -<%= fetch(:deploy_to) %>/shared/log/*.log { - daily - missingok - rotate 52 - compress - delaycompress - notifempty - sharedscripts - endscript - copytruncate -} diff --git a/config/deploy/shared/secrets.yml.erb b/config/deploy/shared/secrets.yml.erb deleted file mode 100644 index 8f82c5dca..000000000 --- a/config/deploy/shared/secrets.yml.erb +++ /dev/null @@ -1,9 +0,0 @@ -<%= fetch(:rails_env) %>: - secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> - twitter_key: <%= ENV["TWITTER_KEY"] %> - twitter_secret: <%= ENV["TWITTER_SECRET"] %> - facebook_key: <%= ENV["FACEBOOK_KEY"] %> - facebook_secret: <%= ENV["FACEBOOK_SECRET"] %> - google_oauth2_key: <%= ENV["GOOGLE_KEY"] %> - google_oauth2_secret: <%= ENV["GOOGLE_SECRET"] %> - server_name: <%= fetch(:server_name) %> diff --git a/config/deploy/shared/sidekiq.yml.erb b/config/deploy/shared/sidekiq.yml.erb deleted file mode 100644 index 1d4747933..000000000 --- a/config/deploy/shared/sidekiq.yml.erb +++ /dev/null @@ -1,2 +0,0 @@ -<%= fetch(:rails_env) %>: - :concurrency: <%= fetch(:sidekiq_concurrency, 5) %> diff --git a/config/deploy/shared/unicorn.rb.erb b/config/deploy/shared/unicorn.rb.erb deleted file mode 100755 index 805734276..000000000 --- a/config/deploy/shared/unicorn.rb.erb +++ /dev/null @@ -1,42 +0,0 @@ -root = "<%= current_path %>" -working_directory root -pid "#{root}/tmp/pids/unicorn.pid" -stderr_path "#{root}/log/unicorn.log" -stdout_path "#{root}/log/unicorn.log" - -listen 5000 -#listen "/tmp/unicorn.<%= fetch(:application) %>.sock" -worker_processes 4 -timeout 40 -preload_app true - -# Force unicorn to look at the Gemfile in the current_path -# otherwise once we've first started a master process, it -# will always point to the first one it started. -before_exec do |server| - ENV['BUNDLE_GEMFILE'] = "<%= current_path %>/Gemfile" -end - -before_fork do |server, worker| - defined?(ActiveRecord::Base) and - ActiveRecord::Base.connection.disconnect! - # Quit the old unicorn process - old_pid = "#{server.config[:pid]}.oldbin" - if File.exists?(old_pid) && server.pid != old_pid - puts "We've got an old pid and server pid is not the old pid" - begin - Process.kill("QUIT", File.read(old_pid).to_i) - puts "killing master process (good thing tm)" - rescue Errno::ENOENT, Errno::ESRCH - puts "unicorn master already killed" - end - end -end - -after_fork do |server, worker| - port = 5000 + worker.nr - child_pid = server.config[:pid].sub('.pid', ".#{port}.pid") - system("echo #{Process.pid} > #{child_pid}") - defined?(ActiveRecord::Base) and - ActiveRecord::Base.establish_connection -end diff --git a/lib/capistrano/substitute_strings.rb b/lib/capistrano/substitute_strings.rb deleted file mode 100755 index d4b244323..000000000 --- a/lib/capistrano/substitute_strings.rb +++ /dev/null @@ -1,12 +0,0 @@ -# we often want to refer to variables which -# are defined in subsequent stage files. This -# let's us use the {{var}} to represent fetch(:var) -# in strings which are only evaluated at runtime. - -def sub_strings(input_string) - output_string = input_string - input_string.scan(/{{(\w*)}}/).each do |var| - output_string.gsub!("{{#{var[0]}}}", fetch(var[0].to_sym)) - end - output_string -end diff --git a/lib/capistrano/tasks/apache.cap b/lib/capistrano/tasks/apache.cap deleted file mode 100755 index 3dfbced57..000000000 --- a/lib/capistrano/tasks/apache.cap +++ /dev/null @@ -1,30 +0,0 @@ -namespace :apache do - %w(start stop restart reload).each do |task_name| - desc "#{task } Apache" - task task_name do - on roles(:app), in: :sequence, wait: 5 do - sudo "/etc/init.d/apache2 #{task_name}" - end - end - end - - desc "Enable site virual host" - task "enable_virtual_host" do - on roles(:app) do - "cd /etc/apache2/sites-available/" - sudo "a2ensite #{fetch(:server_name)}" - end - end - - desc "Remove default Apache Virtual Host" - task "remove_default_vhost" do - on roles(:app) do - if test("[ -f /etc/apache2/sites-enabled/000-default.conf ]") - sudo "rm /etc/apache2/sites-enabled/000-default.conf" - puts "removed default Apache Virtualhost" - else - puts "No default Apache Virtualhost to remove" - end - end - end -end diff --git a/lib/capistrano/tasks/cache.cap b/lib/capistrano/tasks/cache.cap deleted file mode 100644 index ce5bf88a2..000000000 --- a/lib/capistrano/tasks/cache.cap +++ /dev/null @@ -1,12 +0,0 @@ -namespace :cache do - desc "clears the cache in the servers" - task :clear do - on roles(:app) do |role| - within release_path do - with rails_env: fetch(:rails_env) do - execute :rake, "cache:clear" - end - end - end - end -end diff --git a/lib/capistrano/tasks/check_revision.cap b/lib/capistrano/tasks/check_revision.cap deleted file mode 100755 index 12cf3390d..000000000 --- a/lib/capistrano/tasks/check_revision.cap +++ /dev/null @@ -1,14 +0,0 @@ -namespace :deploy do - desc "checks whether the currently checkout out revision matches the - remote one we're trying to deploy from" - task :check_revision do - branch = fetch(:branch) - unless `git rev-parse HEAD` == `git rev-parse origin/#{branch}` - puts "WARNING: HEAD is not the same as origin/#{branch}" - puts "Run `git push` to sync changes or make sure you've" - puts "checked out the branch: #{branch} as you can only deploy" - puts "if you've got the target branch checked out" - exit - end - end -end diff --git a/lib/capistrano/tasks/compile_assets_locally.cap b/lib/capistrano/tasks/compile_assets_locally.cap deleted file mode 100755 index a39295451..000000000 --- a/lib/capistrano/tasks/compile_assets_locally.cap +++ /dev/null @@ -1,17 +0,0 @@ -namespace :deploy do - desc "compiles assets locally then rsyncs" - task :compile_assets_locally do - run_locally do - execute "RAILS_ENV=#{fetch(:rails_env)} bundle exec rake assets:precompile" - end - on roles(:app) do |role| - run_locally do - execute"rsync -av --delete ./public/assets/ #{role.user}@#{role.hostname}:#{release_path}/public/assets/;" - end - "chmod -R 755 #{release_path}/public/assets/" - end - run_locally do - execute "rm -rf ./public/assets" - end - end -end diff --git a/lib/capistrano/tasks/logs.cap b/lib/capistrano/tasks/logs.cap deleted file mode 100755 index 7bbfac2e4..000000000 --- a/lib/capistrano/tasks/logs.cap +++ /dev/null @@ -1,14 +0,0 @@ -namespace :logs do - task :tail, :file do |t, args| - if args[:file] - on roles(:app) do - execute "tail -f #{shared_path}/log/#{args[:file]}.log" - end - else - puts "please specify a logfile e.g: 'rake logs:tail[logfile]" - puts "will tail 'shared_path/log/logfile.log'" - puts "remember if you use zsh you'll need to format it as:" - puts "rake 'logs:tail[logfile]' (single quotes)" - end - end -end diff --git a/lib/capistrano/tasks/run_tests.cap b/lib/capistrano/tasks/run_tests.cap deleted file mode 100755 index 32f26f9ce..000000000 --- a/lib/capistrano/tasks/run_tests.cap +++ /dev/null @@ -1,18 +0,0 @@ -namespace :deploy do - desc "Runs test before deploying, can't deploy unless they pass" - task :run_tests do - test_log = "log/capistrano.test.log" - tests = fetch(:tests) - tests.each do |test| - puts "--> Running tests: '#{test}', please wait ..." - unless system "bundle exec rspec #{test} > #{test_log} 2>&1" - puts "--> Tests: '#{test}' failed. Results in: #{test_log} and below:" - system "cat #{test_log}" - exit; - end - puts "--> '#{test}' passed" - end - puts "--> All tests passed" - system "rm #{test_log}" - end -end diff --git a/lib/capistrano/tasks/setup_config.cap b/lib/capistrano/tasks/setup_config.cap deleted file mode 100755 index 27ba96a12..000000000 --- a/lib/capistrano/tasks/setup_config.cap +++ /dev/null @@ -1,27 +0,0 @@ -namespace :deploy do - task :setup_config do - on roles(:app) do - # make the config dir - execute :mkdir, "-p #{shared_path}/config" - full_app_name = fetch(:full_app_name) - - # config files to be uploaded to shared/config, see the - # definition of smart_template for details of operation. - # Essentially looks for #{filename}.erb in deploy/#{full_app_name}/ - # and if it isn't there, falls back to deploy/#{shared}. Generally - # everything should be in deploy/shared with params which differ - # set in the stage files - config_files = fetch(:config_files) - config_files.each do |file| - smart_template file - end - - # symlink stuff which should be... symlinked - symlinks = fetch(:symlinks) - - symlinks.each do |symlink| - sudo "ln -nfs #{shared_path}/config/#{symlink[:source]} #{sub_strings(symlink[:link])}" - end - end - end -end diff --git a/lib/capistrano/tasks/upload_secrets.cap b/lib/capistrano/tasks/upload_secrets.cap deleted file mode 100644 index e8b75bfcf..000000000 --- a/lib/capistrano/tasks/upload_secrets.cap +++ /dev/null @@ -1,12 +0,0 @@ -namespace :deploy do - desc "rsyncs local config/secrets.yml file" - task :upload_secrets do - on roles(:app) do |role| - run_locally do - execute"rsync -av ./config/secrets.yml #{role.user}@#{role.hostname}:#{shared_path}/config/secrets.yml;" - end - "chmod -R 755 #{shared_path}/config/secrets.yml" - execute "ln -nfs #{shared_path}/config/secrets.yml #{current_path}/config/secrets.yml" - end - end -end diff --git a/lib/capistrano/template.rb b/lib/capistrano/template.rb deleted file mode 100755 index 07bd0be37..000000000 --- a/lib/capistrano/template.rb +++ /dev/null @@ -1,32 +0,0 @@ -# will first try and copy the file: -# config/deploy/#{full_app_name}/#{from}.erb -# to: -# shared/config/to -# if the original source path doesn exist then it will -# search in: -# config/deploy/shared/#{from}.erb -# this allows files which are common to all enviros to -# come from a single source while allowing specific -# ones to be over-ridden -# if the target file name is the same as the source then -# the second parameter can be left out -def smart_template(from, to=nil) - to ||= from - full_to_path = "#{shared_path}/config/#{to}" - if from_erb_path = template_file(from) - from_erb = StringIO.new(ERB.new(File.read(from_erb_path)).result(binding)) - upload! from_erb, full_to_path - info "copying: #{from_erb} to: #{full_to_path}" - else - error "error #{from} not found" - end -end - -def template_file(name) - if File.exist?((file = "config/deploy/#{fetch(:full_app_name)}/#{name}.erb")) - return file - elsif File.exist?((file = "config/deploy/shared/#{name}.erb")) - return file - end - return nil -end