visualsvn slack通知

▼ネタ元 Windows で動かしている Subversion で、コミットメールを送信する | toshyonのメモ書き

以下を「\サーバ名\repos\プロジェクト名\hooks」へ格納する

@echo off

set REPO=%1
set REV=%2
set text=

set outf=%REPO%\%REV%.tmp

svnlook changed %REPO% -r %REV% >> %outf%
svnlook date %REPO% -r %REV% >> %outf%
svnlook author %REPO% -r %REV% >> %outf%
echo --Comment---------------------------- >> %outf%
svnlook log %REPO% -r %REV% >> %outf%

setlocal enabledelayedexpansion
set text=

for /f "tokens=1* delims=:" %%A in ('findstr /n "^"  %outf%') do (
    set text=!text!\n%%B
)

del %outf%

rem Webhook URL
set URL=https://hooks.slack.com/services/XCXXXXX/xxxxx/CXXXXXXX

curl -sS -X POST --data-urlencode "payload={\"text\":\"%text%\",\"channel\":\"#common\",}" %URL%

endlocal
/* -----codeの行番号----- */