lib/alpha_omega/deploy.rb in alpha_omega-0.0.131 vs lib/alpha_omega/deploy.rb in alpha_omega-0.0.132

- old
+ new

@@ -77,10 +77,11 @@ _cset :releases, [ "alpha", "beta", "omega" ] _cset(:releases_dir) { releases.length > 0 ? "releases" : "" } _cset :previous_dir, "previous" _cset :current_dir, "current" + _cset :next_dir, "next" _cset :service_dir, "service" _cset :log_dir, "log" _cset(:releases_path) { File.join(deploy_to, releases_dir) } @@ -92,16 +93,25 @@ else "" end } _cset(:current_path) { File.join(deploy_to, current_dir) } + _cset(:next_path) { + if releases.length > 0 + w = current_workarea + releases.index(w) && releases[(releases.index(w)+1)%releases.length] || "" + else + "" + end + } _cset(:service_path) { File.join(deploy_to, service_dir) } _cset(:service_drop) { File.join(deploy_to, ".#{service_dir}.d") } _cset(:log_path) { File.join(deploy_to, log_dir) } _cset(:previous_revision) { capture("cat #{previous_release}/REVISION", :except => { :no_release => true }).chomp if previous_release } _cset(:current_revision) { capture("cat #{current_path}/REVISION", :except => { :no_release => true }).chomp } + _cset(:next_revision) { capture("cat #{next_release}/REVISION", :except => { :no_release => true }).chomp if next_release } _cset(:latest_revision) { capture("cat #{current_release}/REVISION", :except => { :no_release => true }).chomp } _cset(:run_method) { fetch(:use_sudo, true) ? :sudo : :run } # formerly: @@ -113,9 +123,10 @@ # standalone case, or during deployment. # # with persistent releases, the latest release is always the current release _cset(:previous_release) { previous_path } _cset(:current_release) { release_path } + _cset(:next_release) { next_path } _cset(:latest_release) { current_release } # ========================================================================= # deploy:lock defaults # =========================================================================