898 Commits

Author SHA1 Message Date
Eric
bc5fdd49be
run tests async from start so that stop can cancel all tracked futures 2025-06-05 15:58:03 +10:00
Eric
fb2e3436f6
Add proper async exception tracking to multinodesuite 2025-06-05 15:58:03 +10:00
Eric
592e7c1e27
bump chronos to 4.0.4
potentially fixes an issue on macos where process exit codes were reported -1
2025-06-05 15:58:03 +10:00
Eric
c3558e1e04
formatting 2025-06-05 15:58:03 +10:00
Eric
8257ec29b8
CI: enable artefact upload for parallel tests 2025-06-05 15:58:03 +10:00
Eric
23875b875d
run npm install for parallel tests in ci 2025-06-05 15:58:03 +10:00
Eric
22cdacb0fe
Allow debug runs from the github UI 2025-06-05 15:58:03 +10:00
Eric
cddb407ddc
clean up 2025-06-05 15:58:02 +10:00
Eric
c59fa9f1e5
increase port gap by 1000 to avoid clashes in windows 2025-06-05 15:58:02 +10:00
Eric
aa6678b8ff
lock codex port selection in multinodesuites
Codex api/disc ports were clashing in windows because `lastUsedCodexApiPort` and `lastUsedCodeexDiscPort` were not locked when read and written, while client and provider nodes were started concurrently (async).
2025-06-05 15:58:02 +10:00
Eric
5333856083
add test name to datadir path
avoids reusing datadirs between tests
2025-06-05 15:58:02 +10:00
Eric
25ce97e81e
update Make flag to simply debug
DEBUG -> enables DebugCodexNodes, DebugTestHarness, and ShowContinuousStatusUpdates
DEBUG_HARDHAT -> enables DebugHardhat
PARALLEL -> enables EnableParallelTests

Additionally, when DEBUG is enabled, all integration tests debug configs are enabled for Codex nodes, the Codex node output is printed with the test output (not interleaved), and the Codex node output is logged to file in `tests/integrations/logs/<starttime>__IntegrationTests/<integration_test_name>/<suite_name>/<testname>/<role>_<idx>.log`.
When DEBUG_HARDHAT is enabled, all hardhat output is printed with the test output (not interleaved), and the output is also written to a log file in `tests/integrations/logs/<starttime>__IntegrationTests/<integration_test_name>/hardhat.log
2025-06-05 15:58:02 +10:00
Eric
29df100e93
cancel processes soon
Windows really does not like to terminate processes, so if we try to cancel the process, we will hang in Windows.
2025-06-05 15:58:01 +10:00
Eric
92ca6de95b
fix: hardhot not being stopped when test times out 2025-06-05 15:58:01 +10:00
Eric
7ea21795c9
Allow parallel integration tests to be disabled
Disable with `make ENABLE_PARALLEL_TESTS=0 testIntegration`
2025-06-05 15:58:01 +10:00
Eric
44f99f5d39
fix: use the last used port instead of the globally defined port 2025-06-05 15:58:01 +10:00
Eric
42701ee54e
Increase hardhat, codex api, and codex discovery ports for each subsequent test
Previously, each test would start with a port specified by a global const and overwritable using `define` cli flag. This seems to be causing some port clashes that `nextFreePort` is not picking up. Instead of relying on `nextFreePort`, do not reuse port numbers for any of the tests.
2025-06-05 15:58:01 +10:00
Eric
fb39f12fe4
enable debug logs for testpurchasing since the failure in ci 2025-06-05 15:58:01 +10:00
Eric
680430ef81
swap linux large runner 2025-06-05 15:58:00 +10:00
Eric
7695610307
fix waiting for hardhat node process exit on windows 2025-06-05 15:58:00 +10:00
Eric
3554c772cc
handle cancellations for race and allFutures 2025-06-05 15:58:00 +10:00
Eric
dca40e0682
fix hardhat running on windows
Solution was two-fold:
1. Run the hardhat.cmd script instead of hardhat
2. Use the absolute path to the script executable instead of relative to the working directory
2025-06-05 15:58:00 +10:00
Eric
7c248b45ab
Bubble errors from hardhat start
- bubble errors from hardhatprocess.start (instead of just logging)
- push raises: [] in all nodeprocess procs/methods to avoid leaking `Exception` exception types in method overrides
2025-06-05 15:58:00 +10:00
Eric
3e4d677b82
re-add windows to CI 2025-06-05 15:58:00 +10:00
Eric
52479ef0e8
nil check hardhat process before stopping 2025-06-05 15:58:00 +10:00
Eric
d260e6350c
fix exit status 2025-06-05 15:57:59 +10:00
Eric
5659e442e1
use macos-14-large
windows is failing with SIGSEGV so remove it for now
2025-06-05 15:57:59 +10:00
Eric
3040d27a58
add windows large runner 32vcpu 2025-06-05 15:57:59 +10:00
Eric
0dcf8ded69
indicate with exit code 1 if the tests failed 2025-06-05 15:57:59 +10:00
Eric
7d3013f3b3
fix: pass show continuous updates into test manager instance 2025-06-05 15:57:59 +10:00
Eric
702706d4ee
trying a self-hosted runner to see if it has more resources 2025-06-05 15:57:59 +10:00
Eric
14cc8fdc75
bump to larger runner, linux only 2025-06-05 15:57:58 +10:00
Eric
3fd43f38e8
temp remove coverage from ci workflow 2025-06-05 15:57:58 +10:00
Eric
28dea5bfd2
try large runners for linux/windows 2025-06-05 15:57:58 +10:00
Eric
373d4b5a1a
use large linux runner and disable other tests 2025-06-05 15:57:58 +10:00
Eric
e902df5365
undo changes done for CI debugging 2025-06-05 15:57:58 +10:00
Eric
f0a33ad922
temporarily remove linux test to see if macos works in ci 2025-06-05 15:57:58 +10:00
Eric
d3245c3aa8
Back off port inc in the hopes that this is causing issues with CI 2025-06-05 15:57:57 +10:00
Eric
780fb6ab70
enable CI debugging 2025-06-05 15:57:57 +10:00
Eric
f9fae82026
disable windows integration tests for now 2025-06-05 15:57:57 +10:00
Eric
eaa3fbef9b
npm install to install the hardhat binary in CI 2025-06-05 15:57:57 +10:00
Eric
6b8f6d539a
formatting
trying to make nph happy
2025-06-05 15:57:57 +10:00
Eric
8b70cbc13a
formatting 2025-06-05 15:57:57 +10:00
Eric
2cfd9635e7
clean up 2025-06-05 15:57:56 +10:00
Eric
e4ebfaafac
use tracked futures for showContinuousStatusUpdates 2025-06-05 15:57:56 +10:00
Eric
1218c493be
formatting 2025-06-05 15:57:56 +10:00
Eric
365177947f
CI: do not start hardhat for integration tests 2025-06-05 15:57:56 +10:00
Eric
044edfbfe2
automatically enable chronicles logs for the test harness when DEBUG_TESTHARNESS=1 2025-06-05 15:57:56 +10:00
Eric
e98b60196a
format info blurbs 2025-06-05 15:57:56 +10:00
Eric
05a11cbe44
allow test parameters to be set from make testIntegration command 2025-06-05 15:57:55 +10:00