#!/usr/bin/env bash set -euo pipefail : "${HOMESICK_CMD:=ruby /workspace/bin/homesick}" behavior_verbose="${BEHAVIOR_VERBOSE:-0}" while [[ $# -gt 0 ]]; do case "$1" in -v|--verbose) echo "Enabling verbose output for behavior suite" behavior_verbose=1 ;; *) echo "Unknown argument: $1" >&2 echo "Usage: $0 [--verbose]" >&2 exit 1 ;; esac shift done script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" repo_root="$(cd "$script_dir/.." && pwd)" run_docker_build() { echo "Building Docker image for behavior suite..." local build_log if [[ "$behavior_verbose" == "1" ]]; then docker-buildx build -f "$repo_root/docker/behavior/Dockerfile" -t homesick-behavior:latest "$repo_root" return fi build_log="$(mktemp)" if ! docker-buildx build -f "$repo_root/docker/behavior/Dockerfile" -t homesick-behavior:latest "$repo_root" >"$build_log" 2>&1; then cat "$build_log" >&2 rm -f "$build_log" exit 1 fi rm -f "$build_log" } run_docker_build echo "Running behavior suite in Docker container..." docker run --rm \ -e HOMESICK_CMD="$HOMESICK_CMD" \ -e BEHAVIOR_VERBOSE="$behavior_verbose" \ homesick-behavior:latest