#!/usr/bin/env bash
set -euo pipefail
cd "$(dirname "$0")/.."
proto() { echo 'No protobuf contract in web-service'; }
case "${1:-verify}" in
 proto) proto ;;
 tidy) go mod tidy ;;
 build) go build -o bin/{{SERVICE_NAME}} ./cmd/server ;;
 test) go test -race ./... ;;
 lint) golangci-lint run --default=none --enable=errcheck --enable=govet --enable=ineffassign --enable=staticcheck --enable=unused ./... ;;
 verify) ./scripts/contract; ./scripts/doctor; golangci-lint run --default=none --enable=errcheck --enable=govet --enable=ineffassign --enable=staticcheck --enable=unused ./...; go test -race ./...; go build -o bin/{{SERVICE_NAME}} ./cmd/server ;;
 *) exit 2 ;;
esac
