Wednesday, May 18, 2011

My First Custom Dancer app deployment on dotcloud

I'm in the process of rewriting my site www.leecarmichael.com. I really wanted a reason to build a small but real app with (Perl)Dancer.

I really like most of Dancer's approach to routing and layout. It fits well with my way of thinking of web apps. At the same time I stumbled onto Dot Cloud, a very well thought out and incredible nice deployment provider. They are part of the current cloud shift in which individual application stack layers are hosted instead of a full OS stack.

Here are the few gotchas that I found:
  • They deploy using PSGI and Plack, very cool. But its deployed with an environment of 'deployment'. This means you must have a deployment configuration file. Example: application_root/environments/deployment.yml. I found this confusing since i expected it to follow the Dancer approach of production (my own bad assumption)
  • Unfortunately, runtime errors are not logged to the standard web server error log (or anywhere else). Therefore you need to turn on core logging to find serious errors. I did this by adding the following to my config: debug:"core". ( I am opening a bug :)
  • Lastly I needed to add DBD::mysql to my Makefile.PL (which is really a great way to handle dependancies for deployment). I overlooked this since it was hidden in my app since its not directly 'use'd. (so much for being smart with: ack use --perl :)

Next on my list is to use the Aliases feature to completely move the site and I need to figure out how to exclude subversion meta files from dotcloud push. But first I need to work on the editing part...

Then comes:
  • Custom 400/500 pages
  • Changing header images
  • other fun stuff

__END__

No comments:

Post a Comment