aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common/windows/mysql.ps1
diff options
context:
space:
mode:
authorOliver Wolff <oliver.wolff@qt.io>2018-03-19 13:04:11 +0100
committerLiang Qi <liang.qi@qt.io>2018-04-29 13:21:05 +0000
commit8d04f876e73ae16a6381ba45bbe51377ad23a60f (patch)
tree0a110da096be94d181b30f9def9fbf0d8c4e6c4e /coin/provisioning/common/windows/mysql.ps1
parente3699c5a6fe299e94510a34d2af80e5526461f86 (diff)
windows provisioning: Do not use Windows builtin way of extracting zips
The builtin way of Windows for handling zip files is much slower than using 7zip. A small benchmark (not representative, just extracting the android ndk) showed 11 minutes using Extract-Zip vs 2,5 minutes using Extract-7Zip on my machine. Change-Id: I5198aabb5b75860ead687581fc5e368eb75e48ae Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'coin/provisioning/common/windows/mysql.ps1')
-rw-r--r--coin/provisioning/common/windows/mysql.ps124
1 files changed, 10 insertions, 14 deletions
diff --git a/coin/provisioning/common/windows/mysql.ps1 b/coin/provisioning/common/windows/mysql.ps1
index a22e439a..29ce0ab4 100644
--- a/coin/provisioning/common/windows/mysql.ps1
+++ b/coin/provisioning/common/windows/mysql.ps1
@@ -37,8 +37,11 @@
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
$version = "5.6.11"
-$packagex64 = "C:\Windows\temp\mysql-$version-winx64.zip"
-$packagex86 = "C:\Windows\temp\mysql-$version-win32.zip"
+$baseNameX64 = "mysql-$version-winx64"
+$packagex64 = "C:\Windows\temp\$baseNameX64.zip"
+$baseNameX86 = "mysql-$version-win32"
+$packagex86 = "C:\Windows\temp\$baseNameX86.zip"
+$installFolder = "C:\Utils\my_sql"
function DownloadAndInstall
{
@@ -52,7 +55,7 @@ function DownloadAndInstall
Copy-Item $internalUrl $package
$zipDir = [io.path]::GetFileNameWithoutExtension($package)
- Extract-Dev-Folders-From-Zip $package $zipDir $installPath
+ Extract-7Zip $package $installPath "$zipDir\lib $zipDir\bin $zipDir\share $zipDir\include"
Remove-Item -Path $package
}
@@ -60,28 +63,21 @@ function DownloadAndInstall
if (Is64BitWinHost) {
# Install x64 bit version
$architecture = "x64"
- $installFolder = "C:\Utils\my_sql\my_sql"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-winx64.zip"
DownloadAndInstall $internalUrl $packagex64 $installFolder
- Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\include"
- Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\lib"
+ Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\$baseNameX64\include"
+ Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\$baseNameX64\lib"
}
# Install x86 bit version
$architecture = "x86"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-win32.zip"
-if (Is64BitWinHost) {
- $installFolder = "C:\Utils\my_sql\my_sql$architecture"
-} else {
- $installFolder = "C:\Utils\my_sql\my_sql"
-}
-
DownloadAndInstall $internalUrl $packagex86 $installFolder
-Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\include"
-Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\lib"
+Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\$baseNameX86\include"
+Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\$baseNameX86\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "MySQL = $version" >> ~/versions.txt