mirror of
https://github.com/bettercap/bettercap
synced 2025-08-19 13:09:49 -07:00
improved makefile with tests, benchmarks n stuff
This commit is contained in:
parent
d2e9a3bac0
commit
64099bc1fb
1 changed files with 39 additions and 17 deletions
56
Makefile
56
Makefile
|
@ -1,13 +1,12 @@
|
||||||
TARGET=bettercap
|
TARGET=bettercap
|
||||||
|
PACKAGES=core firewall log modules network packets session tls
|
||||||
|
|
||||||
all: fmt vet build
|
all: deps build
|
||||||
@echo "@ Done"
|
|
||||||
|
|
||||||
test: build
|
deps: godep golint gomegacheck
|
||||||
@go test ./...
|
@dep ensure
|
||||||
|
|
||||||
build: resources
|
build: resources
|
||||||
@echo "@ Building ..."
|
|
||||||
@go build -o $(TARGET) .
|
@go build -o $(TARGET) .
|
||||||
|
|
||||||
resources: network/oui.go
|
resources: network/oui.go
|
||||||
|
@ -15,19 +14,42 @@ resources: network/oui.go
|
||||||
network/oui.go:
|
network/oui.go:
|
||||||
@python ./network/make_oui.py
|
@python ./network/make_oui.py
|
||||||
|
|
||||||
vet:
|
|
||||||
@go vet ./...
|
|
||||||
|
|
||||||
fmt:
|
|
||||||
@go fmt ./...
|
|
||||||
|
|
||||||
lint:
|
|
||||||
@golint ./...
|
|
||||||
|
|
||||||
deps:
|
|
||||||
@dep ensure
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@rm -rf $(TARGET).*
|
@rm -rf $(TARGET).*
|
||||||
@rm -rf $(TARGET)*
|
@rm -rf $(TARGET)*
|
||||||
@rm -rf build
|
@rm -rf build
|
||||||
|
|
||||||
|
docker:
|
||||||
|
@docker build -t bettercap:latest .
|
||||||
|
|
||||||
|
# Go 1.9 doesn't support test coverage on multiple packages, while
|
||||||
|
# Go 1.10 does, let's keep it 1.9 compatible in order not to break
|
||||||
|
# travis
|
||||||
|
test: deps
|
||||||
|
@echo "mode: atomic" > coverage.profile
|
||||||
|
@for pkg in $(PACKAGES); do \
|
||||||
|
go fmt ./$$pkg ; \
|
||||||
|
go vet ./$$pkg ; \
|
||||||
|
megacheck ./$$pkg ; \
|
||||||
|
go test -race ./$$pkg -coverprofile=$$pkg.profile -covermode=atomic; \
|
||||||
|
tail -n +2 $$pkg.profile >> coverage.profile && rm $$pkg.profile ; \
|
||||||
|
done
|
||||||
|
|
||||||
|
html_coverage: test
|
||||||
|
@go tool cover -html=coverage.profile -o coverage.profile.html
|
||||||
|
|
||||||
|
codecov: test
|
||||||
|
@bash <(curl -s https://codecov.io/bash)
|
||||||
|
|
||||||
|
benchmark: server_deps
|
||||||
|
@go test ./... -v -run=doNotRunTests -bench=. -benchmem
|
||||||
|
|
||||||
|
# tools
|
||||||
|
godep:
|
||||||
|
@go get -u github.com/golang/dep/...
|
||||||
|
|
||||||
|
golint:
|
||||||
|
@go get github.com/golang/lint/golint
|
||||||
|
|
||||||
|
gomegacheck:
|
||||||
|
@go get honnef.co/go/tools/cmd/megacheck
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue