Commit ccedcd9
fix(maestro): use a portable mktemp template in run_maestro
`mktemp -t maestro-run` works on BSD/macOS, which appends the random suffix
itself, but GNU coreutils requires at least 6 X's in the template. So on the
Linux Android runners every flow printed
mktemp: too few X's in template 'maestro-run'
'': No such file or directory (os error 2)
— log_file was empty, so the tee redirection failed and maestro never ran.
iOS was unaffected, which is why this passed local and macOS testing.
Use an explicit XXXXXX template, which both implementations accept, and fall
back to a PID-based path if mktemp fails for any other reason: artifact
plumbing must never be what decides whether the tests run.
Audited the rest of the commands added in this series (tr -c, grep -qE) —
both POSIX, and already used by the pre-existing recording code that runs on
Android.
Verified by stubbing a GNU-strict mktemp on PATH: reproduces the CI error with
the old form and run_maestro completes with the new one.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>1 parent 413da76 commit ccedcd9
1 file changed
Lines changed: 11 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
162 | | - | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
163 | 173 | | |
164 | 174 | | |
165 | 175 | | |
| |||
0 commit comments