#!/usr/bin/env bash set -euo pipefail WORKSPACE_VOLUME="${1:-}" REPORT_DIR="${2:-}" [ -n "$WORKSPACE_VOLUME" ] || { echo "ERROR: workspace volume name required" >&2; exit 1; } [ -n "$REPORT_DIR" ] || { echo "ERROR: report directory required" >&2; exit 1; } HAS_COVERAGE=false COVERAGE_SRC="" for candidate in /data/scripts/coverage /data/coverage; do if docker run --rm -v "$WORKSPACE_VOLUME":/data alpine sh -c "[ -d \"$candidate\" ] && ls -A \"$candidate\" | grep -q ." 2>/dev/null; then COVERAGE_SRC="$candidate" break fi done if [ -n "$COVERAGE_SRC" ]; then mkdir -p "$REPORT_DIR/coverage" docker run --rm -v "$WORKSPACE_VOLUME":/data alpine tar c -C "$COVERAGE_SRC" . | tar x -C "$REPORT_DIR/coverage" HAS_COVERAGE=true fi cat > "$REPORT_DIR/index.html" << EOF
${GITHUB_SHA:0:8}