That's really not much of an introduction. This post isn't meant to introduce one to Orchard or even how to use. I'll save those posts for later.

This post is going to be about how to setup Orchard on AppHarbor and get it up and running in minutes. This post was inspired by a post by John Zablocki over at dllHell.net. His instructions are pretty easy to follow but I disagreed with his methodology for working with Orchard on AppHarbor slightly and thought I'd show a my approach. Here's the plan.

Before we begin here are the pre-requisites:

A working knowledge of how to use git/mercurial (making commits, pushing and pulling, etc.)

That should be it. Why are we working with BitBucket rather than GitHub? Personally, there are lots of reasons but there's one problem GitHub has; no free private repositories. This is a dealbreaker for one very important reason. Orchard, for reasons not clear to me yet, keeps the connection string to the database in a plain-text settings file rather than in the web.config. AppHarbor has a way for you to set the connection string from its web interface but since the Orchard team decided to keep the connection string elsewhere, we're forced to commit the actual connection string of the actual production database along with our code. We obviously can't use the public repositories offered by GitHub in this scenario. Why not use SQL CE and avoid the issue? That's even worse since we'll have no access to our SQL CE database once our code reaches AppHarbor and the entire database will be deleted if another commit is made to our AppHarbor application.

I'll explain the need for the rest of the pre-requisites later on.

...

..."

AppHarbor isn't something I've been watching for, but after seeing this and seeing that you can do this kind of hosting on it, I will be now... While hosting Orchard on AppHarbor doesn't look click-click-click easy, it doesn't look hard either and the price looks reasonable too (pretty much free)