CentOS 7.0 配置mail定时发送svn日志邮件
公司搭建了svn服务器,现在的需求是需要每天定时给上司发送svn日志邮件,所以就一步一步来配置。
工具/原料
CentOS 7.0
第一步: 配置mail发送邮件
1、查看mail是否安装

2、配置mail在/etc/mail.rc中添加:set from=账号 smtp=smtp.e垓矗梅吒xmail.qq.comset smtp-auth-user=用户名 smtp-auth-password=密码 smtp-auth=login

3、smtp配置设置我这里采用了qq企业邮箱,就以这个为例。

4、测试mail是否能发送echo 内容 | mail -s 标题 admin@jhonse.com


第二步: 获取svn版本日志
1、查看svn log 参数

2、查看当天的版本日志svn log -r {DATE} -vsvn log -r {2015-11-25}:{2015-11-26} -v

3、SVN强制用户填写日志信息在hook目录下添加pre-commitREP蚪嬷吃败OS="$1"TXN="$2"SVNLOOK=/usr/bin/svnlookLOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" |wc -c`if [ "$LOGMSG" -lt 15 ];then echo "Log message can't be empty! you must input more than 15 chars as comment!." 1>&2 exit 1fi


第三步: 设置定时任务
1、创建执行文件#!/bin/sh#send svn log mailcd /***/usr/bin/svn log -r {$(date -d last-day +%Y-%m-%d)}:{$(d锾攒揉敫ate +%Y-%m-%d)} -v | mail -s svnLog_$(date +%Y-%m-%d) admin@jhonse.com

2、创建任务crontab -e30 8 * * * . /usr/local/command/sendSvnLogMail.sh

3、查看任务crontab -l
