zoukankan      html  css  js  c++  java
  • 分享SVN的钩子代码[借鉴学习]pre-commit-post 钩子

     
    1. #/bin/bash
    2. REPOS=$1
    3. TXN=$2
    4. export HOME=/
    5. export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    6. SVNLOOK=/usr/bin/svnlook
    7. CAT="$SVNLOOK cat -t $TXN $REPOS"
    8. $SVNLOOK changed -t "$TXN" "$REPOS" |awk '$1~/^[^D]/{print $NF}' |while read line; do
    9.         #bash syntax check
    10. # if echo $line |grep -q '.sh$'; then
    11. # $CAT $line |bash -n 2>&2 && continue
    12. # echo "BASH SYNTAX ERROR: $line" >&2
    13. # exit 4
    14. # fi
    15.         #perl syntax check
    16.         if echo $line |grep -q '.pl$'; then
    17.                 $CAT $line |perl -c 2>&2 && continue
    18.                 echo "PERL SYNTAX ERROR: $line" >&2
    19.                 exit 4
    20.         fi
    21.         #puppet syntax check
    22.         if echo $line |grep -q '.pp$'; then
    23.                 $CAT "$line" |puppet --color=false --parseonly --ignoreimport >&2
    24.                 [ $? -eq 0 ] && continue
    25.                 echo "PUPPET SYNTAX ERROR: $line" >&2
    26.                 exit 4
    27.         fi
    28.         #erb syntax check
    29.         if echo $line |grep -q '.erb$'; then
    30.                 $CAT $line |erb -x -T '-' |ruby -c 2>&2 && continue
    31.                 echo "ERB SYNTAX ERROR: $line" >&2
    32.                 exit 4
    33.         fi
    34. done
    post-commit
    1. #!/bin/bash
    2. /usr/bin/svn update /etc/puppet/ --username test --password test >> /tmp/abc.out
    3. if [ $? == 0 ]
    4. then
    5.        echo "ok" >> /tmp/thisabc.out
    6.        /bin/rsync -avztpogdH --password-file=/opt/my2 /etc/puppet root@xxx.xxx.xxx.xxx::abc
    7. fi
  • 相关阅读:
    jvm调优核心思路
    G1 垃圾回收器
    类加载和内存区域划分
    jvm优化案例
    垃圾回收
    buffer pool详解
    InnoDb存储引擎执行流程
    mysql总体架构
    (转载)C#串口介绍以及简单串口通信程序设计实现
    C++文本操作(读写文本文件/二进制文件)
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/5304947.html
Copyright © 2011-2022 走看看