lib/alpha_omega/deploy.rb in alpha_omega-1.2.1 vs lib/alpha_omega/deploy.rb in alpha_omega-1.3.1

- old
+ new

@@ -7,11 +7,11 @@ require 'alpha_omega/deploy/strategy' require 'alpha_omega/utils' require 'capistrano_colors' require 'capistrano/log_with_awesome' -ENV["AO_USER"] || ENV["AO_USER"] = ENV["USER"] +ENV['_AO_DEPLOYER'] ||= ENV['_AO_USER'] Capistrano::Configuration.instance(:must_exist).load do |config| def _cset(name, *args, &block) unless exists?(name) @@ -279,10 +279,14 @@ update_code symlink end end + task :began do + bootstrap_code + end + task :bootstrap_code do if releases.length < 2 # without services and run as root run "[[ -d #{deploy_to} ]] || #{try_sudo} install -d -m #{dir_perms} #{try_sudo.empty? ? '' : "-o #{root_user} -g #{root_group}"} #{deploy_to}" run "#{try_sudo} install -d -m #{dir_perms}#{try_sudo.empty? ? '' : " -o #{user} -g #{group}"} #{releases_path} #{deploy_to}/#{log_dir} #{deploy_to}/#{cache_dir} #{deploy_to}/#{service_dir}" else @@ -301,11 +305,10 @@ task (if you want to perform the `restart' task separately). DESC task :update_code do strategy.deploy! unless skip_scm bundle - cook unless deploy_path_name == migrate_path_name build dist end end @@ -407,16 +410,10 @@ DESC task :bundle do end desc <<-DESC - Apply microwave tvdinners to a release directory. - DESC - task :cook do - end - - desc <<-DESC Compares your application. DESC task :compare do set :deploy_path_name, "compare" set :deploy_release_name, "compare" @@ -556,12 +553,10 @@ system(source.local.log(from)) end end task :lock do - bootstrap_code - epoch = Time.now.to_i locker = '' run "cat #{lock_path} 2>&- || true" do |ch, stream, data| locker << data @@ -577,19 +572,19 @@ true # don't do anything if lock times out, just advise unlock end system "#{figlet} failed to lock" puts "deploy locked by #{lock_user} #{epoch-lock_epoch} seconds ago" - puts "use bin/unlock to remove this lock" + puts "use 'ao unlock' to remove this lock" abort end if want_unlock at_exit { self.unlock; } end - run "echo #{epoch} #{ENV['AO_USER']} > #{lock_path}" + run "echo #{epoch} #{ENV['_AO_DEPLOYER']} > #{lock_path}" end task :lock_compare do set :lock_name, :compare lock @@ -618,41 +613,20 @@ if want_unlock run "rm -f #{lock_path}" end end - end # :deploy - - namespace :ruby do - task :bundle do - run "cd #{deploy_release} && bin/build ruby #{ruby_loader} -- #{bundler_options}" + task :finished do end - end - after "deploy:bundle", "ruby:bundle" + end # :deploy - namespace :node do - task :bundle do - run "cd #{deploy_release} && bin/build node" - end - end - - after "deploy:bundle", "node:bundle" - - namespace :assets do - task :build do - unless deploy_path_name == migrate_path_name - run "cd #{deploy_release} && RAILS_ENV=#{dna["app_env"]} bin/build assets" - end - end - end - - after "deploy:build", "assets:build" - on :exit do unless ENV['LOCAL_ONLY'] && !ENV['LOCAL_ONLY'].empty? - logger.important "uploading deploy logs: #{log_path}/#{application}-#{ENV["AO_USER"]}.log-#{Time.now.strftime('%Y%m%d-%H%M')}" - put full_log, "#{log_path}/#{application}-#{ENV["AO_USER"]}.log-#{Time.now.strftime('%Y%m%d-%H%M')}" + logger.important "uploading deploy logs: #{log_path}/#{application}-#{ENV["_AO_DEPLOYER"]}.log-#{Time.now.strftime('%Y%m%d-%H%M')}" + put full_log, "#{log_path}/#{application}-#{ENV["_AO_DEPLOYER"]}.log-#{Time.now.strftime('%Y%m%d-%H%M')}" end end -end # Capistrano::Configuratioy +end # Capistrano::Configuration + +require 'alpha_omega/config/deploy'