Как заставить svn искать, если есть обновление раз в минуту и ​​если есть вызов некоторого скрипта?

Интересно, можно ли создать такой сценарий .sh, чтобы обычный пользователь мог начать с чего-то вроде nohup ./superScript.sh >& /dev/null & и который раз в минуту заглядывал в какой-нибудь SVN, узнавал текущую версию и был ли обновите команды запуска, например:

kill `ps aux | grep -F 'ServerAPP' | grep -v -F 'grep' | awk '{ print $2 }'` 
./server_automated_net_setup.sh
cd server/install-dir/
export LD_LIBRARY_PATH=./:~/server/install-dir/lib_boost:~/server/install-dir/lib_openSSL
nohup ./ServerAPP >& /dev/null &

, которые убьют запущенное в данный момент приложение, запустят какой-нибудь скрипт автообновления, который у нас уже есть в домашнем каталоге пользователей ~, и снова запустите его.

Можно ли создать такой сценарий и как это сделать?

2
задан 19 January 2012 в 21:32

2 ответа

Сценарий выглядел бы примерно так:

#! /bin/bash

REMOTE_REPO="svn://path/to/remote/repo"
LOCAL_REPO="/path/to/local/repo"

REMOTE_REV=`svn info $REMOTE_REPO | grep '^Revision:' | awk '{print $2}'`
LOCAL_REV=`svn info $LOCAL_REPO | grep '^Revision:' | awk '{print $2}'`

if [ $REMOTE_REV -eq $LOCAL_REV ]; then
    exit 0;
else
    # Run your commands here.
    cd $LOCAL_REPO
    svn up
fi

Этот сценарий просто сравнивает текущее количество пересмотра и локальных и удаленных репозиториев SVN. Если отличение, чем он выполняет некоторые команды. Если они - то же, оно просто существует.

Тогда необходимо было бы просто настроить задание крона для выполнения, как часто Вы хотите.

2
ответ дан 19 January 2012 в 21:32

Если у Вас есть доступ к svn серверу, лучший подход должен определить постфиксация svn рычаг . Таким образом, Вы избегаете опрос .

мы там уже? Мы там уже? Мы там уже? - видят, насколько раздражающий это?

Преимущества рычаги по опросу:

  • Вы будете сразу знать (не с задержкой 1 минуты), потому что Вы говорите svn говорить Вам, когда что-либо изменяется.
  • Вы не тратите впустую свои ресурсы для выяснения и ресурсы сервера для ответа
2
ответ дан 19 January 2012 в 21:32

Другие вопросы по тегам:

Похожие вопросы: