diff options
Diffstat (limited to '.expeditor/buildkite/run_windows_tests.ps1')
-rw-r--r-- | .expeditor/buildkite/run_windows_tests.ps1 | 44 |
1 files changed, 31 insertions, 13 deletions
diff --git a/.expeditor/buildkite/run_windows_tests.ps1 b/.expeditor/buildkite/run_windows_tests.ps1 index 3e2277b..ed5c28a 100644 --- a/.expeditor/buildkite/run_windows_tests.ps1 +++ b/.expeditor/buildkite/run_windows_tests.ps1 @@ -1,24 +1,42 @@ -# Stop script execution when a non-terminating error occurs -$ErrorActionPreference = "Stop" +param([String]$version) +# This script will run ruby test on windows platform. It requires a version +# "3.0" or "3.1" as an argument. -# This will run ruby test on windows platform +# Stop script execution when a non-terminating error occurs. Note that this makes it +# unneccesary to check the exit code of each program being run - non-zero exit will force it to fail and terminate. +$ErrorActionPreference = "Stop" -echo "--- Install make " -choco install make --source=cygwin -If ($lastexitcode -ne 0) { Exit $lastexitcode } +# The specific paths of tools within the ruby30/31 devkit vary a bit across 3.0 and 3.1 +if ($version -eq "3.0") +{ + $base_dir = "C:\ruby30\" + $Env:PATH += ";" + $base_dir + "ruby\bin;" + $base_dir + "msys64\usr\bin;" + $base_dir + "msys64\mingw64\bin" +} +elseif($version -eq "3.1") +{ + $base_dir = "C:\ruby31\" + # Note path change - gcc is living in ucrt64\bin here, and mingw64 in earlier versions. + $Env:PATH += ";" + $base_dir + "ruby\bin;" + $base_dir + "msys64\usr\bin;" + $base_dir + "msys64\ucrt64\bin" +} -Write-Output "--- Bundle install" +Write-Output "--- Ensuring required bins are in path" +Write-Output "PATH: " + $Env:PATH +make --version +gcc --version ruby --version bundler --version + +Write-Output "--- Updating system gems" gem update --system -If ($lastexitcode -ne 0) { Exit $lastexitcode } + +Write-Output "--- Bundle install" bundle install --without development_extras --jobs 3 --retry 3 --path vendor/bundle -If ($lastexitcode -ne 0) { Exit $lastexitcode } + +Write-Output "--- Gem install" gem install yajl-ruby json psych -If ($lastexitcode -ne 0) { Exit $lastexitcode } -Write-Output "--- Bundle Execute" +Write-Output "--- Bundle Execute: rake compile" bundle exec rake compile -If ($lastexitcode -ne 0) { Exit $lastexitcode } + +Write-Output "--- Bundle Execute: rake spec" bundle exec rake spec -If ($lastexitcode -ne 0) { Exit $lastexitcode }
\ No newline at end of file |