Public Access
CI / build (push) Successful in 1m6s
Rebuilding both firmwares on every push was more than anyone looked at. A push now runs the host tests with their coverage (under two minutes); a pull request adds the release firmware and the Debug Build, and is how changes reach main; a tag still does everything before it releases. Pull requests from forks don't run. scripts/ci.sh takes 'tests' or 'builds' for one half; coverage.sh now fails when a test fails. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EhqxQ49eCju4CzKYNjZzwT
15 lines
599 B
Bash
Executable File
15 lines
599 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Local CI: run host unit tests, then build the firmware.
|
|
# Usage: scripts/ci.sh [tests|builds] one half only; both by default
|
|
set -euo pipefail
|
|
source "$(dirname "$0")/_docker.sh"
|
|
DOCKER_EXTRA=()
|
|
|
|
case "${1:-all}" in
|
|
tests) STEPS='pio test -e native' ;;
|
|
builds) STEPS='pio run -e cardputer-adv -e cardputer-adv-debug' ;;
|
|
all) STEPS='pio test -e native && pio run -e cardputer-adv -e cardputer-adv-debug' ;;
|
|
*) echo "Usage: scripts/ci.sh [tests|builds]" >&2; exit 1 ;;
|
|
esac
|
|
run_in_container bash -c 'git config --global --add safe.directory "$PWD" && '"$STEPS"
|