mirror of
https://github.com/vee1e/kubearmor-client.git
synced 2026-09-01 18:28:04 +00:00
* windows support Signed-off-by: Manik2708 <mehtamanik96@gmail.com> * cilium removed Signed-off-by: Manik2708 <mehtamanik96@gmail.com> * some changes reverted Signed-off-by: Manik2708 <mehtamanik96@gmail.com> * add local-release to makefile Signed-off-by: Aryan-sharma11 <aryan1126.sharma@gmail.com> * remove contains element Signed-off-by: Aryan-sharma11 <aryan1126.sharma@gmail.com> * fix snyk failures and bump dependencies Signed-off-by: Aryan-sharma11 <aryan1126.sharma@gmail.com> --------- Signed-off-by: Manik2708 <mehtamanik96@gmail.com> Signed-off-by: Aryan-sharma11 <aryan1126.sharma@gmail.com> Co-authored-by: Aryan-sharma11 <aryan1126.sharma@gmail.com>
87 lines
2.1 KiB
Makefile
87 lines
2.1 KiB
Makefile
# SPDX-License-Identifier: Apache-2.0
|
|
# Copyright 2022 Authors of KubeArmor
|
|
|
|
CURDIR := $(shell pwd)
|
|
INSTALLDIR := $(shell go env GOPATH)/bin/
|
|
|
|
ifeq (, $(shell which govvv))
|
|
$(shell go install github.com/ahmetb/govvv@latest)
|
|
endif
|
|
|
|
PKG := $(shell go list ./selfupdate)
|
|
GIT_INFO := $(shell govvv -flags -pkg $(PKG))
|
|
|
|
.PHONY: build
|
|
build:
|
|
cd $(CURDIR); go mod tidy; CGO_ENABLED=0 go build -ldflags "-w -s ${GIT_INFO}" -o karmor
|
|
|
|
.PHONY: debug
|
|
debug:
|
|
cd $(CURDIR); go mod tidy; CGO_ENABLED=0 go build -ldflags "${GIT_INFO}" -o karmor
|
|
|
|
.PHONY: install
|
|
install: build
|
|
install -m 0755 karmor $(DESTDIR)$(INSTALLDIR)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
cd $(CURDIR); rm -f karmor
|
|
|
|
.PHONY: test
|
|
test:
|
|
cd $(CURDIR); go test -v $(go list ./... | grep -v recommend)
|
|
|
|
.PHONY: protobuf
|
|
vm-protobuf:
|
|
cd $(CURDIR)/vm/protobuf; protoc --proto_path=. --go_opt=paths=source_relative --go_out=plugins=grpc:. vm.proto
|
|
|
|
.PHONY: gofmt
|
|
gofmt:
|
|
cd $(CURDIR); gofmt -s -d $(shell find . -type f -name '*.go' -print)
|
|
cd $(CURDIR); test -z "$(shell gofmt -s -l $(shell find . -type f -name '*.go' -print) | tee /dev/stderr)"
|
|
|
|
.PHONY: golint
|
|
golint:
|
|
ifeq (, $(shell which golint))
|
|
@{ \
|
|
set -e ;\
|
|
GOLINT_TMP_DIR=$$(mktemp -d) ;\
|
|
cd $$GOLINT_TMP_DIR ;\
|
|
go mod init tmp ;\
|
|
go get -u golang.org/x/lint/golint ;\
|
|
rm -rf $$GOLINT_TMP_DIR ;\
|
|
}
|
|
endif
|
|
cd $(CURDIR); golint ./...
|
|
|
|
.PHONY: gosec
|
|
gosec:
|
|
ifeq (, $(shell which gosec))
|
|
@{ \
|
|
set -e ;\
|
|
GOSEC_TMP_DIR=$$(mktemp -d) ;\
|
|
cd $$GOSEC_TMP_DIR ;\
|
|
go mod init tmp ;\
|
|
go install github.com/securego/gosec/v2/cmd/gosec@latest ;\
|
|
rm -rf $$GOSEC_TMP_DIR ;\
|
|
}
|
|
endif
|
|
cd $(CURDIR); gosec ./...
|
|
|
|
.PHONY: scan
|
|
scan:
|
|
if ! command -v govulncheck > /dev/null; then \
|
|
go install golang.org/x/vuln/cmd/govulncheck@latest ;\
|
|
fi
|
|
cd $(CURDIR);\
|
|
govulncheck -test ./... ;
|
|
|
|
.PHONY: local-release
|
|
local-release: build
|
|
ifeq (, $(shell which goreleaser))
|
|
@{ \
|
|
set -e ;\
|
|
go install github.com/goreleaser/goreleaser@latest ;\
|
|
}
|
|
endif
|
|
cd $(CURDIR); VERSION=$(shell git describe --tags --always --dirty) goreleaser release --clean --skip=publish --skip=sign --skip=validate --snapshot
|