Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
@echo off setlocal EnableDelayedExpansion
REM assumptions: REM REM 1) BuildName is first command line arg REM 2) lang is an optional second arg
call logmsg.cmd /t "Beginning ..."
REM set local variables set /a ExitCode=0 set CopyLocations=\\BURNLAB9\public \\BURNLAB10\public REM CopyDirs is a list of dirs from the level of binaries which you want copied set CopyDirs=wks bla sbs srv ent dtc per
REM parse command line set BuildName=%1 for /f "tokens=1 delims=." %%a in ('echo %BuildName%') do set /a BuildNumber=%%a if not defined BuildNumber ( REM Build number not given! call errmsg.cmd "No build name given, exiting." goto :ErrEnd ) if "!BuildNumber!" == "0" ( REM Build number not given! call errmsg.cmd "No build number given, exiting." set /a ExitCode=!ExitCode! + 1 goto :ErrEnd ) if not "%2" == "" ( REM set the lang set Language=%2 ) if not defined Language set Language=usa
REM get the release dir from net share net share release >nul 2>nul if "!ErrorLevel!" NEQ "0" ( call errmsg.cmd "Failed to find a release share to push from, exiting." set /a ExitCode=!ExitCode! + 1 goto :ErrEnd ) set ReleaseDir= for /f "tokens=1,2" %%a in ('net share release') do ( echo A = '%%a' B = '%%b' if /i "%%a" == "Path" set ReleaseDir=%%b ) if not defined ReleaseDir ( call errmsg.cmd "Failed to locate release path, exiting." set /a ExitCode=!ExitCode! + 1 goto :ErrEnd ) REM add the language to the release dir set ReleaseDir=%ReleaseDir%\%Language%
REM now do the push copy for %%a in (%CopyLocations%) do ( if not exist %%a ( call errmsg.cmd "Can't find %%a to copy to, skipping ..." set /a ExitCode=!ExitCode! + 1 ) else ( for %%b in (%CopyDirs%) do ( if not exist %ReleaseDir%\%BuildName%\%%b ( call errmsg.cmd "Failed to find %ReleaseDir%\%BuildName%\%%b for xcopy ..." set /a ExitCode=!ExitCode! + 1 ) else ( echo if not exist %%a\%BuildName%\%%b md %%a\%BuildName%\%%b echo xcopy /cdehikr %ReleaseDir%\%BuildName%\%%b %%a\%BuildName%\%%b echo if "!ErrorLevel!" NEQ "0" set /a ExitCode=!ExitCode! + 1 ) ) ) )
REM see if there were copy errors if "!ExitCode!" NEQ "0" ( call logmsg.cmd "There were copying errors." goto :ErrEnd )
goto :End
:End call logmsg.cmd /t "Finished." endlocal goto :EOF
:ErrEnd call errmsg.cmd "Script failed with !ExitCode! logged error(s)." call errmsg.cmd "See %LOGFILE% for details." call logmsg.cmd /t "Finished." endlocal & seterror.exe "!ExitCode!"
|