diff options
Diffstat (limited to 'coin/provisioning/common')
-rw-r--r-- | coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh | 7 | ||||
-rw-r--r-- | coin/provisioning/common/InstallPKGFromURL.sh | 3 | ||||
-rw-r--r-- | coin/provisioning/common/cmake.ps1 | 55 | ||||
-rwxr-xr-x | coin/provisioning/common/cmake.sh | 2 | ||||
-rwxr-xr-x | coin/provisioning/common/cmake_linux.sh | 53 | ||||
-rw-r--r-- | coin/provisioning/common/install-ruby.ps1 | 3 | ||||
-rw-r--r-- | coin/provisioning/common/python.ps1 | 4 |
7 files changed, 119 insertions, 8 deletions
diff --git a/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh b/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh index b6072062..bee16dd2 100644 --- a/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh +++ b/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh @@ -74,7 +74,12 @@ function InstallAppFromCompressedFileFromURL { echo "Extension for file: $extension" echo "Creating temporary file and directory" targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile - targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory + # macOS 10.10 mktemp does require prefix + if [[ $OSTYPE == "darwin14" ]]; then + targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory + else + targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory + fi DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile" echo "Uncompress $targetFile" case $extension in diff --git a/coin/provisioning/common/InstallPKGFromURL.sh b/coin/provisioning/common/InstallPKGFromURL.sh index bd916cec..c00b646c 100644 --- a/coin/provisioning/common/InstallPKGFromURL.sh +++ b/coin/provisioning/common/InstallPKGFromURL.sh @@ -69,7 +69,8 @@ function InstallPKGFromURL { esac } echo "Checking SHA1 on PKG '$targetFile'" - echo "$expectedSha1 *$targetFile" | /usr/bin/shasum --check || throw $ExceptionSHA1 + echo "$expectedSha1 *$targetFile" > $targetFile.sha1 + /usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1 echo "Run installer on PKG" sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG echo "Removing file '$targetFile'" diff --git a/coin/provisioning/common/cmake.ps1 b/coin/provisioning/common/cmake.ps1 index 197eec57..50e2e82c 100644 --- a/coin/provisioning/common/cmake.ps1 +++ b/coin/provisioning/common/cmake.ps1 @@ -1,10 +1,57 @@ +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + . "$PSScriptRoot\helpers.ps1" -$zip = "c:\users\qt\downloads\cmake-3.6.2-win32-x86.zip" +$majorminorversion = "3.6" +$version = "3.6.2" + +$zip = "c:\users\qt\downloads\cmake-" + $version + "-win32-x86.zip" +$officialurl = "https://cmake.org/files/v" + $majorminorversion + "/cmake-" + $version + "-win32-x86.zip" +$cachedurl = "\\ci-files01-hki.intra.qt.io\provisioning\cmake\cmake-" + $version + "-win32-x86.zip" -Download https://cmake.org/files/v3.6/cmake-3.6.2-win32-x86.zip \\ci-files01-hki.intra.qt.io\provisioning\cmake\cmake-3.6.2-win32-x86.zip $zip +Download $officialurl $cachedurl $zip Verify-Checksum $zip "541F6E7EFD228E46770B8631FFE57097576E4D4E" Extract-Zip $zip C: -Remove-Item C:\CMake -Force -Recurse -Rename-Item C:\cmake-3.6.2-win32-x86 C:\CMake +# TODO: Remove line below after all Windows TIER2 VMs are based on vanilla OS +if((Test-Path -Path "C:\CMake" )){ + try { + Rename-Item -ErrorAction 'Stop' "C:\CMake" C:\CMake_old + } catch {} +} +$defaultinstallfolder = "C:\cmake-" + $version + "-win32-x86" +Rename-Item $defaultinstallfolder C:\CMake + +echo "CMake = $version" >> ~\versions.txt + diff --git a/coin/provisioning/common/cmake.sh b/coin/provisioning/common/cmake.sh index fe84cd0e..e10dd41d 100755 --- a/coin/provisioning/common/cmake.sh +++ b/coin/provisioning/common/cmake.sh @@ -47,5 +47,5 @@ appPrefix="cmake-3.6.2-Darwin-x86_64" InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" -echo "export PATH=/Applications/CMake.app/Contents/bin:$PATH" >> ~/.bashrc +echo "export PATH=/Applications/CMake.app/Contents/bin:\$PATH" >> ~/.bashrc echo "CMake = 3.6.2" >> ~/versions.txt diff --git a/coin/provisioning/common/cmake_linux.sh b/coin/provisioning/common/cmake_linux.sh new file mode 100755 index 00000000..c23cf9b2 --- /dev/null +++ b/coin/provisioning/common/cmake_linux.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +############################################################################# +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the test suite of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script installs CMake 3.6.2 + +# CMake is needed for autotests that verify that Qt can be built with CMake + +# shellcheck source=../common/InstallFromCompressedFileFromURL.sh +source "${BASH_SOURCE%/*}/../common/InstallFromCompressedFileFromURL.sh" + +version="3.6.2" +PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/cmake/cmake-3.6.2-Linux-x86_64.tar.gz" +AltUrl="https://cmake.org/files/v3.6/cmake-3.6.2-Linux-x86_64.tar.gz" +SHA1="dd9d8d57b66109d4bac6eef9209beb94608a185c" +targetFolder="/opt/cmake-$version" +appPrefix="cmake-$version-Linux-x86_64" + +InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix" + +echo "Adding $targetFolder/bin to PATH" +echo "export PATH=$targetFolder/bin:\$PATH" >> ~/.bashrc diff --git a/coin/provisioning/common/install-ruby.ps1 b/coin/provisioning/common/install-ruby.ps1 index 332a3a89..be0bc3eb 100644 --- a/coin/provisioning/common/install-ruby.ps1 +++ b/coin/provisioning/common/install-ruby.ps1 @@ -48,4 +48,7 @@ cmd /c "$rubyPackage /silent" echo "Cleaning $rubyPackage.." Remove-Item -Recurse -Force "$rubyPackage" +$oldPath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine') +[Environment]::SetEnvironmentVariable("Path", $oldPath + ";C:\Ruby22-x64\bin", [EnvironmentVariableTarget]::Machine) + echo "Ruby = $version" >> ~\versions.txt diff --git a/coin/provisioning/common/python.ps1 b/coin/provisioning/common/python.ps1 index 6c88689a..29114456 100644 --- a/coin/provisioning/common/python.ps1 +++ b/coin/provisioning/common/python.ps1 @@ -62,7 +62,9 @@ echo "Chancing allowZip64 value to 'True'..." (Get-Content C:\Python27\lib\zipfile.py) | ForEach-Object { $_ -replace "allowZip64=False", "allowZip64=True" } | Set-Content C:\Python27\lib\zipfile.py echo "Remove $package..." del $package -[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Python27;C:\Python27\Scripts", [EnvironmentVariableTarget]::Machine) + +$oldPath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine') +[Environment]::SetEnvironmentVariable("Path", $oldPath + ";C:\Python27;C:\Python27\Scripts", [EnvironmentVariableTarget]::Machine) C:\Python27\python.exe -m ensurepip # Install python virtual env |