我有一个非常小的应用程序甚至在生产中使用sqlite3,因为永远不会出现任何多次写入等问题。我想使用capistrano快速,轻松地部署此应用程序的更新。但是当我运行cap production deploy
时,它会将整个应用程序转储到一个发布文件夹中,并将其符号链接到current
。我知道我可以在production.sqlite3
中包含deploy.rb
文件来保存数据,但每次我想推送更新时克隆整个仓库似乎都有点过分。
我无法在capistrano文档中找到任何更新内容。
基本上我需要做的就是
确保我的本地git HEAD与master
SSH进入prod服务器并执行git pull
必要时运行rake db:migrate
运行rake assets:clean assets:precompile
重新启动Phusion Passenger
我将如何实现这一目标?
答案 0 :(得分:1)
只需编写自己的bash或ruby脚本即可。我想你错过了卡皮斯特拉诺的观点。克隆整个repo允许您进行部署回滚,保留原来的版本。它考虑了失败的部署,并且在部署过程中不会弄乱您的生产站点。