ceph/qa/workunits/windows/run-tests.ps1
Lucian Petrut 2b014e159f qa: add windows run-tests.ps1
We have a few Python rbd-wnbd tests that are invoked explicitly
by the ceph-build scripts [1].

There are a few issues with that:

* it's a separate repo that has to be updated whenever we add new
  tests
* new tests that reside in the ceph repo will not be executed by
  the PR check
* some tests may be missing in case of older branches

For this reason, we're adding a new script as part of the Ceph
repo that will take care of invoking the Windows rbd-wnbd tests.

The ceph-build script has already been updated accordingly [2].

[1] https://github.com/ceph/ceph-build/blob/main/scripts/ceph-windows/run_tests#L73-L80
[2] https://github.com/ceph/ceph-build/pull/2094

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
Co-Authored-By: Ionut Balutoiu <ibalutoiu@cloudbasesolutions.com>
2023-01-18 15:32:50 +02:00

30 lines
1.1 KiB
PowerShell

$ProgressPreference = "SilentlyContinue"
$ErrorActionPreference = "Stop"
$scriptLocation = [System.IO.Path]::GetDirectoryName(
$myInvocation.MyCommand.Definition)
$testRbdWnbd = "$scriptLocation/test_rbd_wnbd.py"
function safe_exec() {
# Powershell doesn't check the command exit code, we'll need to
# do it ourselves. Also, in case of native commands, it treats stderr
# output as an exception, which is why we'll have to capture it.
cmd /c "$args 2>&1"
if ($LASTEXITCODE) {
throw "Command failed: $args"
}
}
safe_exec python.exe $testRbdWnbd --test-name RbdTest --iterations 100
safe_exec python.exe $testRbdWnbd --test-name RbdFioTest --iterations 100
safe_exec python.exe $testRbdWnbd --test-name RbdStampTest --iterations 100
# It can take a while to setup the partition (~10s), we'll use fewer iterations.
safe_exec python.exe $testRbdWnbd --test-name RbdFsTest --iterations 4
safe_exec python.exe $testRbdWnbd --test-name RbdFsFioTest --iterations 4
safe_exec python.exe $testRbdWnbd --test-name RbdFsStampTest --iterations 4
safe_exec python.exe $testRbdWnbd `
--test-name RbdResizeFioTest --image-size-mb 64