#!/bin/bash
set -e

cd $(dirname $0)/..

echo Running validation

if ! command -v golangci-lint; then
    echo Skipping validation: no golangci-lint available
    exit
fi

echo Running: golangci-lint
golangci-lint run

echo Running: go fmt
for package in $(go list ./...); do
    echo Running go fmt "${package}"
    test -z "$(go fmt "${package}" | tee /dev/stderr)"
done