~oubiwann/pymx/dev

« back to all changes in this revision

Viewing changes to admin/commit.sh

  • Committer: duncan.mcgreggor
  • Date: 2008-03-20 20:23:16 UTC
  • Revision ID: svn-v3-trunk0:e789c851-bc48-0410-838f-eba945681aae:trunk:5
* Removed previous project code from commit.sh and organzied a little better.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
TEST_OUT="test/test.out"
 
2
MSG_OUT="commit-msg"
 
3
FLAG='skip_tests'
2
4
 
3
5
function abort {
4
6
    echo "*** Commit aborting! Test suite failed ***"
9
11
}
10
12
 
11
13
function succeed {
12
 
    rm commit-msg
13
 
    echo -n "Commit succeeded; sync Google and SourceForge? [y/n] "; read CHECK
14
 
    if [[ "$CHECK" == "y" ]]; then
15
 
        ./admin/syncRepos.sh
16
 
    fi
 
14
    rm $MSG_OUT
 
15
    rm $TEST_OUT
17
16
}
18
17
 
19
18
svn diff ChangeLog | \
20
19
    egrep '^\+' | \
21
20
    sed -e 's/^\+//g'| \
22
 
    egrep -v '^\+\+ ChangeLog' > commit-msg
 
21
    egrep -v '^\+\+ ChangeLog' > $MSG_OUT
23
22
echo "Committing with this message:"
24
 
cat commit-msg
 
23
cat $MSG_OUT
25
24
echo
26
 
FLAG='skip_tests'
 
25
 
27
26
if [[ "$1" == "$FLAG" ]];then
28
27
    echo 'OK' > $TEST_OUT
29
28
else
31
30
    # stdout for immediate viewing/feedback
32
31
    python test/test_all.py 2>&1|tee $TEST_OUT
33
32
fi
 
33
 
34
34
STATUS=`tail -1 $TEST_OUT|awk '{print $1}'`
 
35
 
35
36
if [[ "$STATUS" == 'OK' ]];then
36
 
    rm $TEST_OUT
37
37
    if [[ "$1" == "FLAG" ]];then
38
38
        echo "Skipping tests..."
39
39
    else
40
40
        echo "All tests passed."
41
41
    fi
42
42
    echo "Committing to Subversion now..."
43
 
    svn commit --file commit-msg && succeed || error
 
43
    svn commit --file $MSG_OUT && succeed || error
44
44
else
45
45
    abort
46
46
fi