From 54f1bfd10c5149271531d40f1a3056dace5f420b Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 27 Apr 2016 14:52:15 +0200 Subject: Add script to install jom through powershell MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I3f12aa0dd54f99fafdffb53796e54e7b127c3c8c Reviewed-by: Jędrzej Nowacki --- coin/provisioning/common/helpers.ps1 | 31 ++++++++++++++++++++++++ coin/provisioning/common/jom.ps1 | 7 ++++++ coin/provisioning/qtci-windows-10-x86/jom.ps1 | 6 +++++ coin/provisioning/qtci-windows-10-x86_64/jom.ps1 | 6 +++++ coin/provisioning/qtci-windows-7-x86/jom.ps1 | 6 +++++ coin/provisioning/qtci-windows-8-x86/jom.ps1 | 6 +++++ coin/provisioning/qtci-windows-8-x86_64/jom.ps1 | 6 +++++ 7 files changed, 68 insertions(+) create mode 100644 coin/provisioning/common/helpers.ps1 create mode 100644 coin/provisioning/common/jom.ps1 create mode 100644 coin/provisioning/qtci-windows-10-x86/jom.ps1 create mode 100644 coin/provisioning/qtci-windows-10-x86_64/jom.ps1 create mode 100644 coin/provisioning/qtci-windows-7-x86/jom.ps1 create mode 100644 coin/provisioning/qtci-windows-8-x86/jom.ps1 create mode 100644 coin/provisioning/qtci-windows-8-x86_64/jom.ps1 diff --git a/coin/provisioning/common/helpers.ps1 b/coin/provisioning/common/helpers.ps1 new file mode 100644 index 00000000..f517e94d --- /dev/null +++ b/coin/provisioning/common/helpers.ps1 @@ -0,0 +1,31 @@ +function Verify-Checksum +{ + Param ( + [string]$File=$(throw("You must specify a filename to get the checksum of.")), + [string]$Expected=$(throw("Checksum required")), + [ValidateSet("sha1","md5")][string]$Algorithm="sha1" + ) + $fs = new-object System.IO.FileStream $File, "Open" + $algo = [type]"System.Security.Cryptography.$Algorithm" + $crypto = $algo::Create() + $hash = [BitConverter]::ToString($crypto.ComputeHash($fs)).Replace("-", "") + $fs.Close() + if ($hash -ne $Expected) { + Write-Error "Checksum verification failed, got: '$hash' expected: '$Expected'" + } +} + +function Extract-Zip +{ + Param ( + [string]$Source, + [string]$Destination + ) + echo "Extracting '$Source' to '$Destination'..." + + New-Item -ItemType Directory -Force -Path $Destination + $shell = new-object -com shell.application + $zipfile = $shell.Namespace($Source) + $destinationFolder = $shell.Namespace($Destination) + $destinationFolder.CopyHere($zipfile.Items()) +} diff --git a/coin/provisioning/common/jom.ps1 b/coin/provisioning/common/jom.ps1 new file mode 100644 index 00000000..c233ee6e --- /dev/null +++ b/coin/provisioning/common/jom.ps1 @@ -0,0 +1,7 @@ +. "$PSScriptRoot\helpers.ps1" + +$zip = "c:\users\qt\downloads\jom_1_1_0.zip" + +Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/jom_1_1_0.zip -OutFile $zip +Verify-Checksum $zip "C4149FE706B25738B4C4E54C73E180B9CAB55832" +Extract-Zip $zip C:\Utils\Jom diff --git a/coin/provisioning/qtci-windows-10-x86/jom.ps1 b/coin/provisioning/qtci-windows-10-x86/jom.ps1 new file mode 100644 index 00000000..360fad95 --- /dev/null +++ b/coin/provisioning/qtci-windows-10-x86/jom.ps1 @@ -0,0 +1,6 @@ +Set-ExecutionPolicy RemoteSigned -Force + +# install jom +. "$PSScriptRoot\..\common\jom.ps1" + +Set-ExecutionPolicy Restricted -Force diff --git a/coin/provisioning/qtci-windows-10-x86_64/jom.ps1 b/coin/provisioning/qtci-windows-10-x86_64/jom.ps1 new file mode 100644 index 00000000..360fad95 --- /dev/null +++ b/coin/provisioning/qtci-windows-10-x86_64/jom.ps1 @@ -0,0 +1,6 @@ +Set-ExecutionPolicy RemoteSigned -Force + +# install jom +. "$PSScriptRoot\..\common\jom.ps1" + +Set-ExecutionPolicy Restricted -Force diff --git a/coin/provisioning/qtci-windows-7-x86/jom.ps1 b/coin/provisioning/qtci-windows-7-x86/jom.ps1 new file mode 100644 index 00000000..360fad95 --- /dev/null +++ b/coin/provisioning/qtci-windows-7-x86/jom.ps1 @@ -0,0 +1,6 @@ +Set-ExecutionPolicy RemoteSigned -Force + +# install jom +. "$PSScriptRoot\..\common\jom.ps1" + +Set-ExecutionPolicy Restricted -Force diff --git a/coin/provisioning/qtci-windows-8-x86/jom.ps1 b/coin/provisioning/qtci-windows-8-x86/jom.ps1 new file mode 100644 index 00000000..360fad95 --- /dev/null +++ b/coin/provisioning/qtci-windows-8-x86/jom.ps1 @@ -0,0 +1,6 @@ +Set-ExecutionPolicy RemoteSigned -Force + +# install jom +. "$PSScriptRoot\..\common\jom.ps1" + +Set-ExecutionPolicy Restricted -Force diff --git a/coin/provisioning/qtci-windows-8-x86_64/jom.ps1 b/coin/provisioning/qtci-windows-8-x86_64/jom.ps1 new file mode 100644 index 00000000..360fad95 --- /dev/null +++ b/coin/provisioning/qtci-windows-8-x86_64/jom.ps1 @@ -0,0 +1,6 @@ +Set-ExecutionPolicy RemoteSigned -Force + +# install jom +. "$PSScriptRoot\..\common\jom.ps1" + +Set-ExecutionPolicy Restricted -Force -- cgit v1.2.3