github.com/grafana/synthetic-monitoring-agent@v0.64.2/scripts/make/500_linters.mk (about)

     1  ##@ Linting
     2  
     3  SH_FILES   ?= $(shell $(ROOTDIR)/scripts/list-sh-scripts)
     4  BASH_FILES ?= $(shell $(ROOTDIR)/scripts/list-sh-scripts -sbash)
     5  
     6  ifeq ($(CI),true)
     7  GOLANGCI_LINT ?= golangci-lint
     8  SHELLCHECK ?= shellcheck
     9  endif
    10  
    11  ifeq ($(origin GOLANGCI_LINT),undefined)
    12  GOLANGCI_LINT ?= ./scripts/docker-run golangci-lint
    13  endif
    14  
    15  ifeq ($(origin SHELLCHECK),undefined)
    16  SHELLCHECK ?= ./scripts/docker-run shellcheck
    17  endif
    18  
    19  .PHONY: lint
    20  lint: ## Run all code checks.
    21  	$(S) true
    22  
    23  .PHONY: lint-go
    24  lint: lint-go
    25  lint-go: go-vet golangci-lint ## Run all Go code checks.
    26  
    27  ifneq ($(strip $(V)),)
    28  GOLANGCI_LINT_EXTRA_FLAGS := --verbose
    29  endif
    30  
    31  .PHONY: golangci-lint
    32  golangci-lint:
    33  	$(S) echo "lint via golangci-lint"
    34  	$(S) $(GOLANGCI_LINT) run \
    35  		$(GOLANGCI_LINT_MOD_FLAGS) \
    36  		--config '$(ROOTDIR)/.golangci.yaml' \
    37  		$(GOLANGCI_LINT_EXTRA_FLAGS) \
    38  		$(GO_PKGS)
    39  
    40  .PHONY: go-vet
    41  go-vet:
    42  	$(S) echo "lint via go vet"
    43  	$(S) $(GO) vet $(GO_BUILD_MOD_FLAGS) $(GO_PKGS)
    44  
    45  .PHONY: lint-sh
    46  lint: lint-sh
    47  lint-sh: ## Run all shell code checks.
    48  	$(S) echo "lint via shellcheck"
    49  	$(S) if test -n "$(SH_FILES)" ; then $(SHELLCHECK) -a --color=auto --shell=sh $(SH_FILES) ; fi
    50  	$(S) if test -n "$(BASH_FILES)" ; then $(SHELLCHECK) -a --color=auto --shell=bash $(BASH_FILES) ; fi