#!/bin/sh

set -e
set -x

SRCPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
outfile=dependencies.csv

while :; do
	case $1 in
		--csv)
			if [ "$2" ]; then
				outfile=$2
			else
				echo "ERROR: --csv needs a non-empty argument"
				exit 1
			fi
			shift
			;;
		--csv=?*)
			outfile=${1#*=}
			;;
		--csv=)
			echo "ERROR: --csv needs a non-empty argument"
			exit 1
			;;
		*)
			break
			;;
	esac

	shift
done

go mod tidy
go mod download
go list -m -json all $@ | go run go.elastic.co/go-licence-detector \
		-includeIndirect \
		-rules "$SRCPATH/notice/rules.json" \
		-overrides "$SRCPATH/notice/overrides.json" \
		-noticeTemplate "$SRCPATH/notice/dependencies.csv.tmpl" \
		-noticeOut "$outfile" \
		-depsOut ""
