#!/usr/bin/env bash set -o errexit set -o nounset set -o pipefail for d in $(find . -type d -not -iwholename '*.git*' -a -not -iname '.tool' -a -not -iwholename '*vendor*' -a -not -iwholename '*.artifacts*' -a -not -iwholename '*contrib*' -a -not -iwholename '*test*' -a -not -iwholename '*logo*' -a -not -iwholename '*conmon*' -a -not -iwholename '*completions*' -a -not -iwholename '*docs*' -a -not -iwholename '*pause*'); do ${GOPATH}/bin/gometalinter \ --exclude='error return value not checked.*(Close|Log|Print|RemoveAll).*\(errcheck\)$' \ --exclude='declaration of.*err.*shadows declaration.*\(vetshadow\)$' \ --exclude='.*_test\.go:.*error return value not checked.*\(errcheck\)$' \ --exclude='duplicate of.*_test.go.*\(dupl\)$' \ --exclude='cmd\/client\/.*\.go.*\(dupl\)$' \ --exclude='vendor\/.*' \ --exclude='server\/seccomp\/.*\.go.*$' \ --disable=aligncheck \ --disable=gotype \ --disable=gas \ --cyclo-over=80 \ --dupl-threshold=100 \ --tests \ --deadline=600s "${d}" done