diff --git a/.github/workflows/kal.yml b/.github/workflows/kal.yml index 618256e88..17b6281f5 100644 --- a/.github/workflows/kal.yml +++ b/.github/workflows/kal.yml @@ -20,9 +20,5 @@ jobs: persist-credentials: false - name: Set up Go uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0 - - name: Install Golang CI Lint - run: go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.2.1 - - name: Build KAL - run: golangci-lint custom - - name: run api linter - run: ./bin/golangci-kube-api-linter run -c ./.golangci-kal.yml ./... + - name: Run API Linter + run: make api-lint \ No newline at end of file diff --git a/Makefile b/Makefile index ba66ef46b..120f0d404 100644 --- a/Makefile +++ b/Makefile @@ -160,8 +160,12 @@ lint-fix: golangci-lint ## Run golangci-lint linter and perform fixes ci-lint: golangci-lint $(GOLANGCI_LINT) run --timeout 15m0s +.PHONY: api-lint +api-lint: golangci-api-lint + $(GOLANGCI_API_LINT) run -c .golangci-kal.yml --timeout 15m0s ./... + .PHONY: verify -verify: vet fmt-verify generate ci-lint verify-all +verify: vet fmt-verify generate ci-lint api-lint verify-all git --no-pager diff --exit-code config api client-go .PHONY: verify-crds @@ -365,6 +369,7 @@ KUSTOMIZE ?= $(LOCALBIN)/kustomize CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen ENVTEST ?= $(LOCALBIN)/setup-envtest GOLANGCI_LINT = $(LOCALBIN)/golangci-lint +GOLANGCI_API_LINT = $(LOCALBIN)/golangci-kube-api-linter HELM = $(PROJECT_DIR)/bin/helm YQ = $(PROJECT_DIR)/bin/yq KUBECTL_VALIDATE = $(PROJECT_DIR)/bin/kubectl-validate @@ -399,6 +404,11 @@ golangci-lint: $(GOLANGCI_LINT) ## Download golangci-lint locally if necessary. $(GOLANGCI_LINT): $(LOCALBIN) $(call go-install-tool,$(GOLANGCI_LINT),github.com/golangci/golangci-lint/v2/cmd/golangci-lint,$(GOLANGCI_LINT_VERSION)) +.PHONY: golangci-api-lint +golangci-api-lint: golangci-lint $(GOLANGCI_API_LINT) ## Download golangci-lint locally if necessary before building KAL +$(GOLANGCI_API_LINT): + $(GOLANGCI_LINT) custom + .PHONY: yq yq: ## Download yq locally if necessary. GOBIN=$(PROJECT_DIR)/bin GO111MODULE=on go install github.com/mikefarah/yq/v4@v4.45.1