I've started a new project on RIAForge called Chinook.
The idea is to build the ideal web-app deployment tool that is usable by everyone.
In order to do this, I need to know how other people do their deployments, and make certain that I create something capable of working with all methods from the start.
So... I'd really appreciate any feedback people might be able to give on how their deployments work, (both in practise and in an ideal world).
Oh, and if anyone wants an excuse for an article on their own blog, feel free to create one linking to the above - the more feedback I get the better! :)
I'm a solo developer, so I do all of my development work on my personal workstation. I run Apache and ColdFusion on it, but no database server: for that I simply connect to our Oracle server (so transferring database tables from development to production is not an issue for me).
For me, deploying my code from my workstation to the production server is really just a matter of uploading files. I deal with the few differences between the environments (things like file paths, since my box runs Windows and the server runs Solaris) by setting certain variables who values change depending on whether I'm running locally or not in the OnApplicationStart function in Application.cfc. So unless I made a mistake in those variable assignments, I don't have to change any settings when I deploy.
However, the system administrators in charge of running our web servers and ColdFusion servers do have to deal with migrating settings. Lately they've been moving some applications from one ColdFusion server instance to another: not moving the code itself, just changing the CF instance that serves up the code. Since they're moving individual applications/sites, they're copying settings from one server instance to another manually, and sometimes they miss something (like special directory permissions in the sandbox). Their lives would probably be a bit easier if they had a tool to help them move settings on a site-by-site basis, maybe something that made use of the CF Admin API.
Thanks Brian, that's an interesting and obvious area I hadn't actually considered - copying the CF server settings. Definitely something to look into further.