9 Commits

Author SHA1 Message Date
Flo
55b7bf043a fix: e2e summary table alignment and color
IFS=$'\n\t' broke space-delimited read in summary and array join
in parallel status message. Use explicit IFS=' ' where needed.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 19:40:07 +02:00
Flo
cb72a5feca fix: skip Arch Linux e2e tests on ARM64
Arch Linux doesn't publish ARM64 container images. Auto-skip with
SKIP status on non-x86_64 architectures.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 18:53:35 +02:00
Flo
7eb697f1f2 feat: run e2e container tests in parallel
Build images sequentially (shared layer cache), then run BATS and
interactive tests across all distros in parallel. Output captured
to temp files, failures show log tail. Significantly faster for
multi-distro runs.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 18:43:25 +02:00
Flo
1e11105b5c feat: add --skip-host flag to e2e.sh
Skip host interactive tests when only running containers.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 18:11:18 +02:00
Flo
1795661975 fix: e2e.sh unbound variable on empty build_args
Use ${arr[@]+"${arr[@]}"} pattern for nounset-safe empty array expansion.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 18:08:21 +02:00
Flo
dd6257985b fix: v0.2.3 e2e distro loop, FIDO2 freeze, grouped prompts
Fix e2e.sh distro iteration broken by IFS setting (use bash array).
Fix FIDO2 detection freezing on macOS (check ssh-sk-helper, don't
invoke ssh-keygen). Group apply prompts into 6 categories. Fix Linux
gitleaks install hint.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 18:05:19 +02:00
Flo
0e6d04fefb feat: add host-side interactive tests for macOS coverage
Add test/run-interactive.sh that runs tmux interactive tests on
the host in an isolated HOME. Covers macOS ssh-keygen which
cannot be tested in Linux containers. e2e.sh now runs host
interactive tests first, then container matrix. Skips gracefully
if tmux is not installed.

Closes: #23

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 12:41:08 +02:00
Flo
26ea0bc106 fix: run interactive tmux tests in e2e pipeline
e2e.sh now runs both BATS and interactive tests per distro:
build -> BATS -> interactive. Failure stage shown in summary.

Closes: #22

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 11:39:43 +02:00
Flo
f1b9d0183d feat: add e2e container test harness
Implements spec docs/specs/2026-03-30-e2e-container-tests.md:
- 5 Containerfiles (ubuntu, debian, fedora, alpine, arch)
- test/e2e.sh runner with --runtime, --rebuild, single-distro mode
- tmux-based interactive tests (full accept, safety gate decline,
  signing generate, signing skip)
- All scripts pass shellcheck

Closes: #18, #19, #20

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-31 11:30:40 +02:00