Commit: 7c40ee87a37e52bcfe479bf2bc2261db4869d08d Author: Allen Truong <v-alt...@microsoft.com> Fri, 12 Jul 2019 21:18:42 +0200 Committer: Christoph M. Becker <cmbecke...@gmx.de> Fri, 12 Jul 2019 22:44:00 +0200 Parents: 1bb5ffcc657a36d2fcc14577e4d2e70e0ac1efd8 Branches: master
Link: http://git.php.net/?p=pftt2.git;a=commitdiff;h=7c40ee87a37e52bcfe479bf2bc2261db4869d08d Log: Fixes #53: Created batch files Bugs: https://bugs.php.net/53 Changed paths: A bin/get_latest_revision.cmd A bin/get_qa.cmd A bin/get_release.cmd A bin/get_snapshot.cmd
diff --git a/bin/get_latest_revision.cmd b/bin/get_latest_revision.cmd new file mode 100644 index 0000000..7a01628 --- /dev/null +++ b/bin/get_latest_revision.cmd @@ -0,0 +1,10 @@ +set SNAP_JSON=php-%branch%.json +set SNAP_JSON_URL=https://windows.php.net/downloads/snaps/php-%branch%/%SNAP_JSON% +bitsadmin /transfer DownloadingJson /download /priority high !SNAP_JSON_URL! %PFTT_CACHE%\!SNAP_JSON! + +set "psCmd="add-type -As System.Web.Extensions;^ +$JSON = new-object Web.Script.Serialization.JavaScriptSerializer;^ +$JSON.DeserializeObject($input).revision_last_exported"" + +for /f %%I in ('^<"%PFTT_CACHE%\!SNAP_JSON!" powershell -noprofile %psCmd%') do set "revision=r%%I" +del %PFTT_CACHE%\!SNAP_JSON! \ No newline at end of file diff --git a/bin/get_qa.cmd b/bin/get_qa.cmd new file mode 100644 index 0000000..3a75601 --- /dev/null +++ b/bin/get_qa.cmd @@ -0,0 +1,75 @@ +@ECHO OFF +setlocal enabledelayedexpansion + +set branch=%1 +set build=%2 +set cpu=%3 + +REM Check if parameters are set +if %branch%.==. GOTO args_error +if %build%.==. GOTO args_error +if %cpu%.==. ( + GOTO args_error +) else ( + GOTO set_env +) + +:args_error +echo User error: must specify branch, build type, CPU arch and revision code +echo get_release "<branch> <build> <cpu>" +echo Branch can be any of: 7.2.XRCX, 7.3.XRCX, 7.4.XRCX +echo Build can be any of: NTS, TS +echo CPU can be any of: X64, X86 +exit /b + +:set_env +REM set important env vars +IF DEFINED PFTT_SHELL GOTO :skip_set_env +CALL %~dp0set_env.cmd +:skip_set_env + +SET PHP_BUILDS=%~d0\PHPBuilds + +REM Create cache folder if it does not exist +if not exist %PHP_BUILDS% ( + md %~d0\PHPBuilds +) + +set file_name=php-%branch% +set test_pack=php-test-pack-%branch% + +REM Add nts to file_name if needed +if /I %build%==nts ( + set file_name=%file_name%-nts +) + +REM Set file_name based on parameters +if not x%branch:7.2=%==x%branch% ( + set file_name=%file_name%-win32-vc15-%cpu% +) else if not x%branch:7.3=%==x%branch% ( + set file_name=%file_name%-win32-vc15-%cpu% +) else if not x%branch:7.4=%==x%branch% ( + set file_name=%file_name%-win32-vs16-%cpu% +) + +REM Download the build if it is not available +if not exist %PHP_BUILDS%\%file_name% ( + set build_link=https://windows.php.net/downloads/qa/%file_name%.zip + + bitsadmin /transfer DownloadingQABuild /download /priority high !build_link! %PFTT_CACHE%\%file_name%.zip + 7za.exe x %PFTT_CACHE%\%file_name%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%file_name%.zip +) else ( + echo QA build already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) + +REM Also download test-pack if it is not available +if not exist %PHP_BUILDS%\%test_pack% ( + set test_pack_link=https://windows.php.net/downloads/qa/%test_pack%.zip + + bitsadmin /transfer DownloadingQATestPack /download /priority high !test_pack_link! %PFTT_CACHE%\%test_pack%.zip + 7za.exe x %PFTT_CACHE%\%test_pack%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%test_pack%.zip +) else ( + echo Test pack already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) \ No newline at end of file diff --git a/bin/get_release.cmd b/bin/get_release.cmd new file mode 100644 index 0000000..53b7f30 --- /dev/null +++ b/bin/get_release.cmd @@ -0,0 +1,77 @@ +@ECHO OFF +setlocal enabledelayedexpansion + +set branch=%1 +set build=%2 +set cpu=%3 + +REM Check if parameters are set +if %branch%.==. GOTO args_error +if %build%.==. GOTO args_error +if %cpu%.==. ( + GOTO args_error +) else ( + GOTO set_env +) + +:args_error +echo User error: must specify branch, build type, CPU arch and revision code +echo get_release "<branch> <build> <cpu>" +echo Branch can be any of: 7.1, 7.2, 7.3, 7.4 +echo Build can be any of: NTS, TS +echo CPU can be any of: X64, X86 +exit /b + +:set_env +REM set important env vars +IF DEFINED PFTT_SHELL GOTO :skip_set_env +CALL %~dp0set_env.cmd +:skip_set_env + +SET PHP_BUILDS=%~d0\PHPBuilds + +REM Create cache folder if it does not exist +if not exist %PHP_BUILDS% ( + md %~d0\PHPBuilds +) + +set file_name=php-%branch% +set test_pack=php-test-pack-%branch%-latest + +REM Add nts to file_name if needed +if /I %build%==nts ( + set file_name=%file_name%-nts +) + +REM Set file_name based on parameters +if %branch%==7.1 ( + set file_name=%file_name%-win32-vc14-%cpu%-latest +) else if %branch%==7.2 ( + set file_name=%file_name%-win32-vc15-%cpu%-latest +) else if %branch%==7.3 ( + set file_name=%file_name%-win32-vc15-%cpu%-latest +) else if %branch%==7.4 ( + set file_name=%file_name%-win32-vs16-%cpu%-latest +) + +REM Download the build if it is not available +if not exist %PHP_BUILDS%\%file_name% ( + set build_link=https://windows.php.net/downloads/releases/latest/%file_name%.zip + + bitsadmin /transfer DownloadingReleaseBuild /download /priority high !build_link! %PFTT_CACHE%\%file_name%.zip + 7za.exe x %PFTT_CACHE%\%file_name%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%file_name%.zip +) else ( + echo Release build already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) + +REM Also download test-pack if it is not available +if not exist %PHP_BUILDS%\%test_pack% ( + set test_pack_link=https://windows.php.net/downloads/releases/latest/%test_pack%.zip + + bitsadmin /transfer DownloadingReleaseTestPack /download /priority high !test_pack_link! %PFTT_CACHE%\%test_pack%.zip + 7za.exe x %PFTT_CACHE%\%test_pack%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%test_pack%.zip +) else ( + echo Test pack already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) \ No newline at end of file diff --git a/bin/get_snapshot.cmd b/bin/get_snapshot.cmd new file mode 100644 index 0000000..10fafab --- /dev/null +++ b/bin/get_snapshot.cmd @@ -0,0 +1,81 @@ +@ECHO OFF +setlocal enabledelayedexpansion + +set branch=%1 +set build=%2 +set cpu=%3 +set revision=%4 + +REM Check if parameters are set +if %branch%.==. GOTO args_error +if %build%.==. GOTO args_error +if %cpu%.==. GOTO args_error +if %revision%.==. ( + GOTO args_error +) else ( + GOTO set_env +) + +:args_error +echo User error: must specify branch, build type, CPU arch and revision code +echo get_release "<branch> <build> <cpu> <revision code | latest>" +echo Branch can be any of: 7.1, 7.2, 7.3, 7.4 +echo Build can be any of: NTS, TS +echo CPU can be any of: X64, X86 +echo Revision code starts with r (i.e. rxxxxxx) +exit /b + +:set_env +REM set important env vars +IF DEFINED PFTT_SHELL GOTO :skip_set_env +CALL %~dp0set_env.cmd +:skip_set_env + +SET PHP_BUILDS=%~d0\PHPBuilds + +REM Create cache folder if it does not exist +if not exist %PHP_BUILDS% ( + md %~d0\PHPBuilds +) + +REM Set file_name and test_pack based on parameters +if %branch%==7.1 ( + set file_name=php-%branch%-%build%-windows-vc14-%cpu% + set test_pack=php-test-pack-%branch%-%build%-windows-vc14-%cpu% +) else if %branch%==7.2 ( + set file_name=php-%branch%-%build%-windows-vc15-%cpu% + set test_pack=php-test-pack-%branch%-%build%-windows-vc15-%cpu% +) else if %branch%==7.3 ( + set file_name=php-%branch%-%build%-windows-vc15-%cpu% + set test_pack=php-test-pack-%branch%-%build%-windows-vc15-%cpu% +) else if %branch%==7.4 ( + set file_name=php-%branch%-%build%-windows-vs16-%cpu% + set test_pack=php-test-pack-%branch%-%build%-windows-vs16-%cpu% +) + +if /i %revision%==latest call get_latest_revision.cmd + +set file_name=%file_name%-%revision% +set test_pack=%test_pack%-%revision% + +REM Download the build if it is not available +if not exist %PHP_BUILDS%\%file_name% ( + set build_link=https://windows.php.net/downloads/snaps/php-%branch%/%revision%/%file_name%.zip + + bitsadmin /transfer DownloadingSnapBuild /download /priority high !build_link! %PFTT_CACHE%\%file_name%.zip + 7za.exe x %PFTT_CACHE%\%file_name%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%file_name%.zip +) else ( + echo Snap build already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) + +REM Also download test-pack if it is not available +if not exist %PHP_BUILDS%\%test_pack% ( + set test_pack_link=https://windows.php.net/downloads/snaps/php-%branch%/%revision%/%test_pack%.zip + + bitsadmin /transfer DownloadingSnapTestPack /download /priority high !test_pack_link! %PFTT_CACHE%\%test_pack%.zip + 7za.exe x %PFTT_CACHE%\%test_pack%.zip -o%PHP_BUILDS%\* + del %PFTT_CACHE%\%test_pack%.zip +) else ( + echo Test pack already exists. Remove or move file in %PHP_BUILDS% if you want new copy. +) \ No newline at end of file