X Tutup
name: Lint on: push: paths: - "**.go" - go.mod - go.sum pull_request: paths: - "**.go" - go.mod - go.sum jobs: lint: runs-on: ubuntu-latest steps: - name: Set up Go 1.15 uses: actions/setup-go@v2 with: go-version: 1.15 - name: Check out code uses: actions/checkout@v2 - name: Verify dependencies run: | go mod verify go mod download LINT_VERSION=1.34.1 curl -fsSL https://github.com/golangci/golangci-lint/releases/download/v${LINT_VERSION}/golangci-lint-${LINT_VERSION}-linux-amd64.tar.gz | \ tar xz --strip-components 1 --wildcards \*/golangci-lint mkdir -p bin && mv golangci-lint bin/ - name: Run checks run: | STATUS=0 assert-nothing-changed() { local diff "$@" >/dev/null || return 1 if ! diff="$(git diff -U1 --color --exit-code)"; then printf '\e[31mError: running `\e[1m%s\e[22m` results in modifications that you must check into version control:\e[0m\n%s\n\n' "$*" "$diff" >&2 git checkout -- . STATUS=1 fi } assert-nothing-changed go fmt ./... assert-nothing-changed go mod tidy bin/golangci-lint run --out-format github-actions || STATUS=$? exit $STATUS
X Tutup