2020-04-02 22:58:23 +00:00
|
|
|
#!/bin/bash -e
|
|
|
|
|
|
|
|
# Need to run linter twice to cover all the build tags code paths
|
|
|
|
|
|
|
|
declare -A BUILD_TAGS
|
2020-04-17 11:34:14 +00:00
|
|
|
# TODO: add systemd tag
|
2020-04-02 22:58:23 +00:00
|
|
|
BUILD_TAGS[default]="apparmor,seccomp,selinux"
|
2020-06-03 13:33:52 +00:00
|
|
|
BUILD_TAGS[abi]="${BUILD_TAGS[default]},varlink,!remoteclient"
|
|
|
|
BUILD_TAGS[tunnel]="${BUILD_TAGS[default]},remote,varlink,remoteclient"
|
2020-04-17 11:34:14 +00:00
|
|
|
|
|
|
|
declare -A SKIP_DIRS
|
|
|
|
SKIP_DIRS[abi]=""
|
2020-06-03 13:33:52 +00:00
|
|
|
# TODO: add "remote" build tag to pkg/api
|
2020-04-17 11:34:14 +00:00
|
|
|
SKIP_DIRS[tunnel]="pkg/api"
|
2020-04-02 22:58:23 +00:00
|
|
|
|
|
|
|
[[ $1 == run ]] && shift
|
|
|
|
|
|
|
|
for i in tunnel abi; do
|
2020-04-17 11:34:14 +00:00
|
|
|
echo ""
|
|
|
|
echo Running golangci-lint for "$i"
|
|
|
|
echo Build Tags "$i": ${BUILD_TAGS[$i]}
|
|
|
|
echo Skipped directories "$i": ${SKIP_DIRS[$i]}
|
|
|
|
golangci-lint run --build-tags=${BUILD_TAGS[$i]} --skip-dirs=${SKIP_DIRS[$i]} "$@"
|
2020-04-02 22:58:23 +00:00
|
|
|
done
|