Re: [Catalyst] Migrating mod_perl app to Catalyst
On Mon, Apr 27, 2009 at 01:54:12PM -0500, Michael Reddick wrote: Does anyone have any advice for migrating a large mod_perl app that has no tests to catalyst? I already know of Catalyst::Controller::WrapCGI which seems to be a good start. Assuming your app doesn't use apache specific stuff. What I tend to recommend in such cases is to start writing new functionality in Catalyst as FastCGI and just map chunks of the URI space across to the new stuff. When you need to significantly alter the old code, port it first. Eventually you'll just have a Catalyst+FastCGI codebase, and you'll have had working code at every stage. -- Matt S Trout Catalyst and DBIx::Class consultancy with a clue: Technical Directorhttp://www.shadowcat.co.uk/catalyst/ Shadowcat Systems Ltd. Any questions? Mail mst at shadowcat.co.uk My blog: http://www.shadowcat.co.uk/blog/matt-s-trout/ (warning: profanity) ___ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/
Re: [Catalyst] Migrating mod_perl app to Catalyst
On Wed, Apr 29, 2009 at 4:58 AM, Matt S Trout dbix-cl...@trout.me.ukwrote: On Mon, Apr 27, 2009 at 01:54:12PM -0500, Michael Reddick wrote: Does anyone have any advice for migrating a large mod_perl app that has no tests to catalyst? I already know of Catalyst::Controller::WrapCGI which seems to be a good start. Assuming your app doesn't use apache specific stuff. What I tend to recommend in such cases is to start writing new functionality in Catalyst as FastCGI and just map chunks of the URI space across to the new stuff. When you need to significantly alter the old code, port it first. Eventually you'll just have a Catalyst+FastCGI codebase, and you'll have had working code at every stage. I've done similar things, and my new method is to have a two tiered application where my Cat app sits in front of legacy, and on unhandled URLs throws a 404. The front-end proxy (Varnish, in my case) then restarts the request against the next backend, which is the mod_perl system. Then, when I put in new features in Catalyst if the URL is changed I can simply put in a permanent redirect and everything just works. This is roughly a new technique, and lacking some fine tuning points, but so far I'm very happy with it. I wrote up a posting about my implementation (which has some other nits): http://our.coldhardcode.com/jshirley/2009/04/varnish-and-movabletype-for-co.html -J ___ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/
Re: [Catalyst] Migrating mod_perl app to Catalyst
On Mon, Apr 27, 2009 at 01:54:12PM -0500, Michael Reddick wrote: Does anyone have any advice for migrating a large mod_perl app that has no tests to catalyst? Write some tests with Test::WWW::Mechanize first; they should be relatively easy to port to Catalyst tests once you swap it in. hdp. ___ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/