2021-12-04 16:42:11 +00:00

26 lines
720 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/.."
go test -timeout=30m -covermode=atomic -coverprofile=ci/out/coverage.prof -coverpkg=./... "$@" ./...
sed -i '/stringer\.go/d' ci/out/coverage.prof
sed -i '/nhooyr.io\/websocket\/internal\/test/d' ci/out/coverage.prof
sed -i '/examples/d' ci/out/coverage.prof
# Last line is the total coverage.
go tool cover -func ci/out/coverage.prof | tail -n1
go tool cover -html=ci/out/coverage.prof -o=ci/out/coverage.html
if [[ ${CI-} && ${GITHUB_REF-} == *master ]]; then
local deployDir
deployDir="$(mktemp -d)"
cp ci/out/coverage.html "$deployDir/index.html"
netlify deploy --prod "--dir=$deployDir"
fi
}
main "$@"