We just migrated our repository from Windows 2003 to Windows 2008 and
I am getting a 200 OK error message every time I try to commit. If I
run the script on the box, everything works. I have even downloaded
the tools from sysinternals.

Here is what is in my post-commit hook
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe E:\scripts
\svnemail.ps1 "%1" "%2"

Here is the powershell script

# Sends an email message to the configured addresses, notifying
# of changes to the current repository
#

# customize the following
#

$env:path += ";C:\Program Files (x86)\VisualSVN Server\bin"
$server = "127.0.0.1"
$to = "us...@here.com"
$sqlto = "u...@there.com"
$from = "SVN<s...@here.com>"

#
#

$REPOS = $args[0]
$REV = $args[1]

$author = svnlook author $REPOS --revision $REV
$subject = "SVN Commit: ($author) $REPOS ($REV)"
$body = ""


foreach($log in svnlook log $REPOS --revision $REV)
{
        if($REPOS -eq "E:\SVN\Custom")
        {

                $subject = "SVN Commit: ($log) $REPOS ($REV)"
        }

        if($log -ne "")
        {
                $body += $log + "`n"
        }
}

if ($body -ne "") { $body += "`n`n" }

foreach($changed in svnlook changed $REPOS --revision $REV)
{
        $body += $changed + "`n"
}


if($REPOS -eq "E:\SVN\MainProj" -and -bnot $changed.Contains("branches/
RB-Q1.2009"))
{
        svn cleanup E:\Builds\
        svn update E:\Builds\
}

$mailer = new-object Net.Mail.SMTPclient($server)
if($REPOS -eq "E:\SVN\Custom")
{
        $msg = new-object Net.Mail.MailMessage($from,$sqlto,$subject,$body)
}
else
{
        $msg = new-object Net.Mail.MailMessage($from,$to,$subject,$body)
}

$mailer.send($msg)


Anyone have any feedback. This exact same process worked flawlessly on
our last server, but fails on the new one. If I take out the post-
commit hook everything works fine.

Reply via email to