我正在为Magento项目使用Capistrano部署工作流程。
在部署时,Capistrano使用https://github.com/Cotya/magento-composer-installer在服务器上构建此Magento项目。
问题是有时候我的Magento模块没有正确安装,我需要清除缓存,重新索引或其他任务才能100%完成所有任务。这些问题偶尔会发生,所以我无法将修复程序编写到部署过程中。
部署Capistrano时我想要的是不会立即将符号链接更改为新版本。相反,我能够在另一个链接上预览网站,修复需要修复的内容,然后手动更改符号链接。
这可以使用Capistrano进行设置吗?
如果没有,我的另一个解决方案是使用Magento维护标志,但我宁愿避免将网站置于维护状态。也可以对其他想法开放!
由于
答案 0 :(得分:0)
通过告诉Capistrano不要将符号链接更改作为流程的一部分(类似Rake::Task["deploy:symlink:release"].clear_actions
),然后手动运行(cap [env] deploy:symlink:release
),可能会这样做。
然而,在“开放给其他想法”的类别下!我建议您设置一个临时站点。创建一个进程以自动将prod数据库恢复到阶段,然后将代码部署到阶段并在那里进行检查。一旦确认它有效,就部署到prod并让符号链接自动完成它们的工作。