source: dasscm/trunk/usr/bin/dasscm_remote_update.sh@ 1167

Last change on this file since 1167 was 1167, checked in by joergs, on Feb 4, 2014 at 4:45:55 PM

rsync: added checksum check

  • Property svn:executable set to *
File size: 1.2 KB
RevLine 
[804]1#!/bin/bash
2
3# dasscm_remote_update is intended for systems
4# where a local dasscm installation is not possible
5# but ssh and rsync is available.
6# In this case,
7# the files from the local repository checkout
8# are updated to the current content.
9# Use only, if a local dasscm installation is not possbile!
10
[1164]11DIR="$1"
12
[1163]13set -o errexit -o nounset
14
[804]15usage()
16{
17echo "
18 usage: $0 hostname
19 hostname must be identical with the repository path
20"
21exit 1
22}
23
[1163]24OPTIONS=${DASSCM_RSYNC_OPTIONS:-""}
25REMOTE_USER=${DASSCM_REMOTE_USER:-"root"}
[804]26
[1164]27if [ -z "$DIR" ]; then
[804]28 usage
29fi
30
[1164]31if [ ! -d "$DIR" ]; then
[804]32 echo
[1164]33 echo " failed to access directory $DIR"
[804]34 usage
35fi
36
37# start at an current repository checkout of morbo.
38# only already existing files will be updated.
39# If you want to add more files,
40# create the file in the repository and re-run this script
[1164]41cd $DIR
42svn up || (echo "failed to update repository $DIR"; usage)
[1163]43FILELIST=`mktemp`
[1164]44svn ls -R > $FILELIST
45SERVER=`basename "$PWD"`
[1167]46rsync -av --checksum --existing --files-from $FILELIST $OPTIONS $REMOTE_USER@$SERVER:/. . || (echo "FAILED to transfer dasscm files. Failed to access server $SERVER via ssh/rsync?"; usage)
[1163]47rm $FILELIST
[804]48echo "updated file must be commited manually"
Note: See TracBrowser for help on using the repository browser.