source:
vendors/FCM-2017.10.0/sbin/my-regular-update.example
@
13997
Last change on this file since 13997 was 10672, checked in by nicolasmartin, 5 years ago | |
---|---|
File size: 1.4 KB |
Rev | Line | |
---|---|---|
[10672] | 1 | #!/bin/bash |
2 | #------------------------------------------------------------------------------- | |
3 | # (C) British Crown Copyright 2006-17 Met Office. | |
4 | # | |
5 | # This file is part of FCM, tools for managing and building source code. | |
6 | # | |
7 | # FCM is free software: you can redistribute it and/or modify | |
8 | # it under the terms of the GNU General Public License as published by | |
9 | # the Free Software Foundation, either version 3 of the License, or | |
10 | # (at your option) any later version. | |
11 | # | |
12 | # FCM is distributed in the hope that it will be useful, | |
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | # GNU General Public License for more details. | |
16 | # | |
17 | # You should have received a copy of the GNU General Public License | |
18 | # along with FCM. If not, see <http://www.gnu.org/licenses/>. | |
19 | #------------------------------------------------------------------------------- | |
20 | set -eu | |
21 | LOCK=/path/to/lock | |
22 | WC_OF_PROJECT=/path/to/working/copy/of/project | |
23 | ||
24 | if [[ -e $LOCK ]]; then | |
25 | exit | |
26 | fi | |
27 | ||
28 | mkdir -p $LOCK | |
29 | echo "$(whoami)@$(hostname):$$" >$LOCK/info # info on who created the lock | |
30 | ||
31 | while true; do | |
32 | UPDATED=$(cd $WC_OF_PROJECT && svn update | sed '$d' | cut -c6-) | |
33 | if [[ -z $UPDATED ]]; then | |
34 | break | |
35 | fi | |
36 | if [[ -n $(echo "$UPDATED" | grep '^foo/bar/[^/]*\.baz$') ]]; then | |
37 | : # Performs some update if foo/bar/*.baz has changed | |
38 | fi | |
39 | done | |
40 | ||
41 | rm $LOCK/info | |
42 | rmdir $LOCK | |
43 | exit |
Note: See TracBrowser
for help on using the repository browser.