CI: regtest: stop on failed test, expose datadirs
What changed, and why it matters
This commit only changes how Electrum's automated CI (continuous integration) tests run. It makes tests stop at the first failure and saves wallet data directories as debugging artifacts. There is no change to the Electrum wallet software itself, no user-facing behavior change, and no security fix or vulnerability introduced.
No security action needed. This is a benign CI-only change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch modifies .cirrus.yml, a CI configuration file. It adds –failfast to the unittest invocation, captures the exit code, archives /tmp/alice, /tmp/bob, and /tmp/carol into test_wallets.tar.gz, and exposes that archive as a Cirrus CI artifact on failure. These are test/debugging workflow improvements only; no application code is touched.
Changed components
.cirrus.yml CI configurationregtest CI taskInspect captured patch +8 / −1
diff --git a/.cirrus.yml b/.cirrus.yml
index 76591dc..d9c7015 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -183,9 +183,16 @@ task:
- tests/regtest/run_bitcoind.sh
electrumx_service_background_script:
- tests/regtest/run_electrumx.sh
+ # if any test fails, the test will get aborted (--failfast) and the wallet directories will be
+ # available for download in the Cirrus UI
regtest_script:
- sleep 10s
- - python3 -m unittest tests/regtest.py
+ - python3 -m unittest tests/regtest.py --failfast || TEST_EXIT_CODE=$?
+ - tar -czf test_wallets.tar.gz /tmp/alice /tmp/bob /tmp/carol || true
+ - exit ${TEST_EXIT_CODE:-0}
+ on_failure:
+ wallet_artifacts:
+ path: "test_wallets.tar.gz"
env:
LD_LIBRARY_PATH: contrib/_saved_secp256k1_build/
ELECTRUM_REQUIREMENTS: contrib/requirements/requirements.txt
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.