ci: Avoid intermittent Windows generate download failures
What changed, and why it matters
This is a routine reliability improvement for Bitcoin Core's automated Windows build scripts. It adds a single retry with a short pause when a build-generation step fails, likely due to temporary network hiccups during CI runs. There is no security relevance.
No security action needed. Treat as normal CI/maintenance improvement.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit modifies .github/ci-windows.py to retry the CMake generate step once after a 12-second sleep if the first attempt exits non-zero. The run() helper is called with check=False so the return code can be inspected, then on failure a second run(command) is executed (this time with default check=True behavior). This is purely a CI robustness change.
Changed components
.github/ci-windows.pyInspect captured patch +7 / −1
diff --git a/.github/ci-windows.py b/.github/ci-windows.py
index 236c6301..e21a7da9 100755
--- a/.github/ci-windows.py
+++ b/.github/ci-windows.py
@@ -8,6 +8,7 @@ import os
import shlex
import subprocess
import sys
+import time
from pathlib import Path
sys.path.append(str(Path(__file__).resolve().parent.parent / "test"))
@@ -73,7 +74,12 @@ def generate(ci_type):
"--preset",
"vs2026",
] + GENERATE_OPTIONS[ci_type]
- run(command)
+ if run(command, check=False).returncode != 0:
+ print("=== ⚠️ ===")
+ print("Generate failure! Network issue? Retry once ...")
+ time.sleep(12)
+ print("=== ⚠️ ===")
+ run(command)
def build(_ci_type):
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.