Perl 将Catalyst应用程序部署到生产服务器的最佳做法是什么?
将Catalyst应用程序部署到生产服务器的好方法是什么?目前,我只是在存储库的根目录中有一个FastCGI调度脚本,当我想要更新服务器代码时,我将分支推送到服务器。这很简单,但并不完美。如果代码未能通过服务器机器上的测试(例如,由于未满足的依赖关系),我将留下一个已损坏的应用程序。如何部署您的Catalyst应用程序?您有更好的方法吗?将代理负载平衡器和两个触发器fastcgi应用程序结合起来,作为生产应用程序和暂存应用程序交替运行将是您的最佳选择。您使用的是什么web服务器?如果恰好是Lighttpd,请查看以下链接:Perl 将Catalyst应用程序部署到生产服务器的最佳做法是什么?,perl,catalyst,Perl,Catalyst,将Catalyst应用程序部署到生产服务器的好方法是什么?目前,我只是在存储库的根目录中有一个FastCGI调度脚本,当我想要更新服务器代码时,我将分支推送到服务器。这很简单,但并不完美。如果代码未能通过服务器机器上的测试(例如,由于未满足的依赖关系),我将留下一个已损坏的应用程序。如何部署您的Catalyst应用程序?您有更好的方法吗?将代理负载平衡器和两个触发器fastcgi应用程序结合起来,作为生产应用程序和暂存应用程序交替运行将是您的最佳选择。您使用的是什么web服务器?如果恰好是Lig
svn export
,并将其放到一个单独的目录中,适当地设置环境,然后执行:
perl -MMyApp -e '{print "OK"}'
if [ $? -ne 0 ]
then
echo "MyApp failed compile, not installing."
exit 1
fi
这足以确保在回收Apache和/或FastCGI之前,安装在dev中的任何模块都可用。一旦成功,导出的代码将移动到其最终位置。不幸的是,我在共享主机上使用Apache,这意味着我缺少选项,但还是要感谢您提供的提示。