Say the laptop's scripts unparsed where the build seat has no bash
mesh/merge-gate pass: builds asus-zephyrus-g14, i3status-rust, power → ace, g14, novox, shanks; no bus step; every machine composes with the change as it d…
mesh/repo-check pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh): main's version judged it; the change's judges the pull requests after it merges; it…
mesh/delivery delivered

The Go toolchain the repository check runs in carries no bash, so the scripts' syntax
check failed there on a missing interpreter, not a broken script.
This commit is contained in:
jochen
2026-10-08 16:20:45 +02:00
parent 0d54ecc764
commit 5d7d9020b8
@@ -113,6 +113,12 @@ func TestTheVendorKeysRunTheModulesOwnScriptsAndTheyParse(t *testing.T) {
if len(scripts) == 0 {
t.Fatal("no scripts")
}
// The scripts are bash's. The build seat's Go toolchain carries no bash, so there they are said as
// not parsed rather than failed: a missing interpreter is not a broken script.
if _, err := exec.LookPath("bash"); err != nil {
t.Logf("NOT PARSED: no bash on this machine, so the scripts' syntax was not checked")
return
}
for _, s := range scripts {
if out, err := exec.Command("bash", "-n", s).CombinedOutput(); err != nil {
t.Errorf("%s: %v %s", s, err, out)