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...
- Custom 400/500 pages
- Changing header images
- other fun stuff