Update ry.bat script
This commit is contained in:
64
assets/implementation/scripts/test_ry_bat.ps1
Normal file
64
assets/implementation/scripts/test_ry_bat.ps1
Normal file
@@ -0,0 +1,64 @@
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
$repoRoot = Resolve-Path (Join-Path $PSScriptRoot '..\..\..')
|
||||
$expectedJar = Join-Path $repoRoot 'ruoyi-admin\target\ruoyi-admin.jar'
|
||||
$originalJar = Join-Path $repoRoot 'ruoyi-admin\target\ruoyi-admin.jar.original'
|
||||
$backupOriginalJar = "$originalJar.codex-test-backup"
|
||||
|
||||
Push-Location $repoRoot
|
||||
try {
|
||||
$output = cmd /c "set RY_DRY_RUN=1&& call ry.bat start" 2>&1 | Out-String
|
||||
$exitCode = $LASTEXITCODE
|
||||
|
||||
if ($exitCode -ne 0) {
|
||||
throw "ry.bat dry-run failed with exit code $exitCode.`n$output"
|
||||
}
|
||||
|
||||
if ($output -notmatch 'START_CMD=java ') {
|
||||
throw "Expected START_CMD output was not found.`n$output"
|
||||
}
|
||||
|
||||
if ($output -notmatch [regex]::Escape($expectedJar)) {
|
||||
throw "Expected jar path was not found in dry-run output.`n$output"
|
||||
}
|
||||
|
||||
foreach ($unsupportedToken in @('PrintGCDateStamps', 'UseParallelOldGC', 'javaw')) {
|
||||
if ($output -match [regex]::Escape($unsupportedToken)) {
|
||||
throw "Unexpected token [$unsupportedToken] found in dry-run output.`n$output"
|
||||
}
|
||||
}
|
||||
|
||||
if (Test-Path $originalJar) {
|
||||
Move-Item -Path $originalJar -Destination $backupOriginalJar -Force
|
||||
try {
|
||||
$packageOutput = cmd /c "set RY_DRY_RUN=1&& call ry.bat start" 2>&1 | Out-String
|
||||
$packageExitCode = $LASTEXITCODE
|
||||
|
||||
if ($packageExitCode -ne 0) {
|
||||
throw "ry.bat package dry-run failed with exit code $packageExitCode.`n$packageOutput"
|
||||
}
|
||||
|
||||
if ($packageOutput -notmatch 'BUILD_CMD=mvn -pl ruoyi-admin -am package -DskipTests') {
|
||||
throw "Expected BUILD_CMD output was not found.`n$packageOutput"
|
||||
}
|
||||
|
||||
if ($packageOutput -notmatch [regex]::Escape($expectedJar)) {
|
||||
throw "Expected jar path was not found in package dry-run output.`n$packageOutput"
|
||||
}
|
||||
}
|
||||
finally {
|
||||
if (Test-Path $backupOriginalJar) {
|
||||
Move-Item -Path $backupOriginalJar -Destination $originalJar -Force
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host 'ry.bat dry-run verification passed.'
|
||||
}
|
||||
finally {
|
||||
if (Test-Path $backupOriginalJar) {
|
||||
Move-Item -Path $backupOriginalJar -Destination $originalJar -Force
|
||||
}
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
Reference in New Issue
Block a user