On 3/1/2010 4:31 PM, Robinson Tiemuqinke wrote: > > >> > I've had a project to upload customer codes and some data to members > >> > inside a webfarm, the upload work will be done almost daily for quite > >> > a while. Customer needs the upload status be confirmed everytime and > >> > data will be verified later easily when in need. > >> > Is there one or more popular tools available for this purposes? open > >> > source is preferred, but commercial ones are fine too as long as price > >>Rsync over ssh is about as good as it gets for remotely updating files. > >> If they can assemble a tree that matches the directory structure, > 'rsync -av' will show a list of files that are different (and thus > >>updated) and you can repeat it if you want - no output means the remote > side is identical. > > Rsync over ssh doesn’t works but a little cumbersome – customer’s > servers’ data center are far away from development site and link between > is slow. So better one to data center’s one and from the latter to all > others in data center. This will work better but still could be > improved. Since customer has some scripts to be reloaded after > codes/data are synced. If ssh is set up for rsync, it is simple enough to add commands to run remotely in a script. >>You'd probably really want to wrap this with a version control system > like subversion to get history, logging, rollback capability, etc. so > > Is there already an existing solution like this available, open source > and commercial? There are a lot of things called 'content management systems' that are basically web sites with upload/management capability built in (joomla, drupal, alfresco, etc.). They aren't likely to work unless you start over from scratch with them for the web site design. If you already have the sites in place you are probably better off setting up a subversion repository and a staging site at the data center with the servers (perhaps even running on one of them) and let the customers commit the changes to the repository with subversion client tools and work out a script that checks out a revision they specify into the staging area, rsync's to the server locations, and ssh's the needed commands. The operations should be relatively simple and as easy to manage in shell scripts as some dedicated framework. -- Les Mikesell lesmikesell at gmail.com