我是新来Enginyard的。我已经使用enginyard web界面部署了应用程序,但是使用"ey rollback“命令从控制台回滚。
我的问题是,这个命令是否也会回滚迁移?
发布于 2011-09-27 02:25:52
从engineyard-serverside API来看,它不会回滚迁移。考虑到这可能是多么不可预测,这是有道理的。作为参考,执行迁移的实际代码为:
# task
def rollback
if c.all_releases.size > 1
rolled_back_release = c.latest_release
c.release_path = c.previous_release(rolled_back_release)
revision = File.read(File.join(c.release_path, 'REVISION')).strip
info "~> Rolling back to previous release: #{short_log_message(revision)}"
run_with_callbacks(:symlink)
sudo "rm -rf #{rolled_back_release}"
bundle
info "~> Restarting with previous release"
with_maintenance_page { run_with_callbacks(:restart) }
else
info "~> Already at oldest release, nothing to roll back to"
exit(1)
end
end您可以很容易地解析出这意味着它为您的项目重新执行symlink,删除最新的(失败的)部署,并重新启动can服务器。
https://stackoverflow.com/questions/7554347
复制相似问题