1- GOBIN = $(shell go env GOBIN)
2- ifeq ($(GOBIN ) ,)
3- GOBIN = $(shell go env GOPATH) /bin
4- endif
5- GOX = $(GOBIN ) /gox
6- GOIMPORTS = $(GOBIN ) /goimports
7- ARCH = $(shell uname -p)
8-
9- # ------------------------------------------------------------------------------
10- # dependencies
11-
12- # If go install is run from inside the project directory it will add the
13- # dependencies to the go.mod file. To avoid that we change to a directory
14- # without a go.mod file when downloading the following dependencies
15-
16- $(GOX ) :
17- (cd /; GO111MODULE=on go install github.com/mitchellh/gox@latest)
18-
19- $(GOIMPORTS ) :
20- (cd /; GO111MODULE=on go install golang.org/x/tools/cmd/goimports@latest)
21-
22- # ------------------------------------------------------------------------------
231
242all : vet test
253
264clean :
275 rm -rf gen
286
297generate : clean
30- mkdir -p gen; cd gen; go run ../cmd/generate-fix/generate-fix.go ../spec/* .xml
31- go get -u all
32-
33- generate-dist :
34- cd ..; go run quickfix/cmd/generate-fix/generate-fix.go quickfix/spec/* .xml
35-
36- test-style :
37- GO111MODULE=on golangci-lint run
38-
39- .PHONY : format
40- format : $(GOIMPORTS )
41- GO111MODULE=on go list -f ' {{.Dir}}' ./... | xargs $(GOIMPORTS ) -w -local github.com/quickfixgo/quickfix
8+ mkdir -p gen; cd gen; go run ../cmd/generate-fix/generate-fix.go -pkg-root=github.com/quickfixgo/quickfix/gen ../spec/* .xml
429
4310fmt :
44- go fmt ` go list ./... | grep -v quickfix/gen `
11+ gofmt -l -w -s $( shell find . -type f -name ' * .go')
4512
4613vet :
4714 go vet ` go list ./... | grep -v quickfix/gen`
4815
4916test :
50- MONGODB_TEST_CXN=localhost go test -v -cover . ./datadictionary ./internal
17+ MONGODB_TEST_CXN=mongodb://db:27017 go test -v -cover . ./datadictionary ./internal
5118
52- _build_all :
53- go build -v ` go list ./...`
19+ linters-install :
20+ @golangci-lint --version > /dev/null 2>&1 || { \
21+ echo " installing linting tools..." ; \
22+ curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v1.50.1; \
23+ }
5424
55- build_accept :
56- cd _test ; go build -o echo_server
25+ lint : linters-install
26+ golangci-lint run
5727
58- build : _build_all build_accept
28+ # ---------------------------------------------------------------
29+ # Targets related to running acceptance tests -
5930
31+ build-test-srv :
32+ cd _test; go build -o echo_server ./test-server/
6033fix40 :
6134 cd _test; ./runat.sh $@ .cfg 5001 " definitions/server/$@ /*.def"
6235fix41 :
@@ -78,3 +51,20 @@ ACCEPT_SUITE=fix40 fix41 fix42 fix43 fix44 fix50 fix50sp1 fix50sp2
7851accept : $(ACCEPT_SUITE )
7952
8053.PHONY : test $(ACCEPT_SUITE )
54+ # ---------------------------------------------------------------
55+
56+ # ---------------------------------------------------------------
57+ # These targets are specific to the Github CI Runner -
58+
59+ build-src :
60+ go build -v ` go list ./...`
61+
62+ build : build-src build-test-srv
63+
64+ test-ci :
65+ go test -v -cover . ./datadictionary ./internal
66+
67+ generate-ci : clean
68+ mkdir -p gen; cd gen; go run ../cmd/generate-fix/generate-fix.go -pkg-root=github.com/quickfixgo/quickfix/gen ../spec/$(shell echo $(FIX_TEST ) | tr '[:lower:]' '[:upper:]') .xml;
69+
70+ # ---------------------------------------------------------------
0 commit comments