#!/bin/bash
set -Eeuo pipefail

# shellcheck disable=SC1091
source script/env

trap "script/stop-docker || echo 'unable to clean up docker'" EXIT
echo "building docker image"
if ! script/build-docker; then
	echo "unable to build docker image. cannot continue"
	exit 1
fi

for v in "4.0.8" "4.2.4" "4.2.8" "4.2.17" "4.2.21"; do
	EXABGP_VERSION="${v}" script/run-docker
	sleep 30
	echo "testing version ${v}"
	tmplog=$(mktemp -u -t exabgp_exporter_XXXXXXXXXX)
	if ! test/libs/bats/bin/bats -t test/*.bats > "${tmplog}"; then
		echo "failed testing ${v}"
		cat "${tmplog}"
		script/stop-docker
		continue
	fi
	docker logs exabgp_exporter > "/tmp/exabgp_export_docker_${v}.log"
	script/stop-docker
done
