mirror of
https://github.com/ArduPilot/ardupilot.git
synced 2026-10-06 19:00:27 +08:00
Derive the fixed archive destination from GitHub's workspace instead of a path containing the canonical repository name, so the reports stay inside the checkout when a fork is renamed. Archive only under GitHub Actions. The old path doubled as the CI check: /__w/ardupilot/ardupilot/tmp never exists on a developer machine, so archive_rename() was a no-op there by accident. A path derived from the checkout passes that check on any Linux developer machine that has run scan-build, because autotest.py points TMPDIR at the checkout's tmp directory, and a second local run would then move its reports beneath the first run's tmp/scan-build, where the non-recursive plist glob does not find them. The check is now the GITHUB_ACTIONS variable, as elsewhere in Tools/, and an existing destination is refused rather than nested under. GITHUB_WORKSPACE must be absolute. An empty value would put the archive relative to the current directory, where the upload step only warns that it found nothing; an unset one now fails the same way instead of raising KeyError. AI-assisted: root cause analysis and patch drafted with OpenAI Codex; archive gating reviewed and drafted with Claude. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>