Re: [Catalyst] Migrating mod_perl app to Catalyst

2009-04-28 Thread Matt S Trout
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

2009-04-28 Thread J. Shirley
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

2009-04-27 Thread Hans Dieter Pearcey
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/