#!/usr/bin/env bash set -e -o pipefail SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # CI platforms differ, so per-platform GOLANGCI_LINT_OPTS can be set # from a platform-specific Dockerfile, otherwise let's just set # (somewhat pessimistic) default of 10 minutes. : "${GOLANGCI_LINT_OPTS=--timeout=10m}" [ -n "${TESTDEBUG}" ] && set -x # TODO find a way to share this code with hack/make.sh if pkg-config 'libsystemd' 2> /dev/null; then DOCKER_BUILDTAGS+=" journald" fi echo -e "\n\033[0;36mINFO\033[0m Start validation with golang-ci-lint" # TODO use --out-format=junit-xml and store artifacts # shellcheck disable=SC2086 GOGC=75 golangci-lint run \ ${GOLANGCI_LINT_OPTS} \ --print-resources-usage \ --build-tags="${DOCKER_BUILDTAGS}" \ --verbose \ --config "${SCRIPTDIR}/golangci-lint.yml"