you might want to consider using git as your deployment model.
Over the past year I switched to using git to deploy almost all of my apps & services and it is just so much better than what I was doing before (various cobbled together crap).
I even have git repos for things like my servers' .bashrc file ... you'd be surprised how useful that is.
Yes there are tools like puppet & chef and whatnot, but I think of those as better suited to dependencies than your actual code with its higher push frequency.
[UPDATE] might as well talk about how we do this:
In order to use "git push" from a development box to push to remote servers (rather than having them pull from a repo, which requires keeping a git repo accessible from your production boxes, which might not be convenient), you need two things:
1. On the server, run this:
git config receive.denyCurrentBranch ignore
Otherwise git will refuse your pushes b/c the receiving end is already on that branch
2. On the server, write a .git/hooks/post-receive and make it executable. Its contents should be:
#!/bin/sh
# NB: hooks execute in the .git dir (not the repo root)
# and GIT_DIR is set to '.'; either one prevents "git checkout" from working
unset GIT_DIR
cd ..
git checkout -f # force checkout the current branch
Nothing too fancy with the overlay, just some good old fashioned javascript + css. Seems like lots of people are interested so we'll whip up a blog post for everyone.
Sure, not everyone will want to install our agent and people using services like Heroku or AppHarbour wont be able to so we're working on a solution for that right now. Having an agent was the best way for us to launch and show off the features we are trying to push like real-time updates and historical zooming.
Its hard. One possible thing could be to share the source code of the agent with the customers. Before installing they can view the source of the agent.
This is largely a theoretical argument that we hackers like to bring up as a way to dismis the tor network.
The truth that we all learned after the lulsec debacle was that the FBI will resort to much simpler and more effective low-tech procedures to spy on their prey.
I really like this new model but it got me thinking about how hard it's going to be for Aziz to push his content to different types of media. Traditionally the labels would handle that (usually incompetently) but for a startup to focus on this niche would be awesome.