REM 请把本脚本放在git所在的目录即可 REM 需要使用工具wac和blat REM blat用于发送邮件,请在使用前用blat -savesettings先保存SMTP的相关信息 REM git 请采用 ssh 的方式,这样可以避免输入密码 @echo off REM 收件人,多个地址用逗号分隔 set RECP=abc@163.com,def@163.com REM 下面的代码是进入对应的Rails工程目录,你根据需要修改即可 %~d0 cd %~dp0\rails_project_dir REM 更新源代码 cmd /c git pull REM 运行Cucumber脚本,由于Cucumber使用了ANSI,所以需要用wac处理 cmd /c bundle exec jruby -X+O -S cucumber features > cu_result.tmp REM 使用wac处理ANSI转义字符 wac < cu_result.tmp > cucumber_result.txt REM 检查Cucumber是否失败 findstr "Failing Scenarios:" cucumber_result.txt if %errorlevel%==0 ( echo. > last.error start "" "%ProgramFiles%\Windows Media Player\wmplayer.exe" "error.wav" blat -attach cucumber_result.txt -subject "Cucumber failure" -body "Cucumber failed. See attached file for more information" -to %RECP% ) else ( start "" "%ProgramFiles%\Windows Media Player\wmplayer.exe" "OK.wav" if exist last.error blat -subject "Cucumber back to normal mode" -body "Cucumber passed" -to %RECP% del last.error ) del cu_result.tmp exit