[ic] Production deployment methods
john_young at sonic.net
Thu Aug 28 13:51:28 EDT 2003
Jason Lee asked:
> I'd like to be able to edit locally on my machine and push to the prod
> machine or even edit a local network dev server and then test and then
> push to prod. I was thinking about rsync'ing from a stage machine to the
> prod machine, but I would really prefer to use some sort of SSH or SCP
> to get changes out to that prod machine since if I was ever remote,
> this would work nicely - I wouldn't be just tied to my local network to
> make changes in other words. Nor would other possible contributors.
How about rsync with ssh:
rsync -auvze ssh . server:/some/destination/path/
To test and not actually copy, add an 'n' argument (rsync -auvzne ssh ...).
You could write little shell scripts for portions of your development area
so that you don't have to scan everything if you have a large site.
Carefully consider the rsync's --delete argument - you might want to use
it when sending to the production server, but not when sending from a
secondary development server to your primary development server.
> Like I said, in the Java world, we used CVS to check out our code base
> on a stage machine and if it passed, then we'd archive the app and push
> out the prod using various scripts that contained SCP/SSH commands in
> them. So something like this would be ideal for me, but I'd like to get
> others input before I embark on this.
Sounds reasonable. rsync -e ssh is nice because no additional open ports
are needed other than that required for ssh alone. Setting up an rsync
server daemon is not necessary.
Congratulations on your progress,
More information about the interchange-users