-
Notifications
You must be signed in to change notification settings - Fork 178
/
Makefile
46 lines (37 loc) · 2.06 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# Go Substrate RPC Client (GSRPC) provides APIs and types around Polkadot and any Substrate-based chain RPC calls
#
# Copyright 2019 Centrifuge GmbH
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
clean: ## cleanup
@rm -f coverage.txt
@docker-compose down
lint: ## run linters on go code
@docker run -v `pwd`:/app -w /app golangci/golangci-lint:v1.45.2 golangci-lint run
lint-fix: ## run linters on go code and automatically fixes issues
@docker run -v `pwd`:/app -w /app golangci/golangci-lint:v1.45.2 golangci-lint run --fix
test: ## run all tests in project against the RPC URL specified in the RPC_URL env variable or localhost while excluding gethrpc
@go test -race -count=1 `go list ./... | grep -v '/gethrpc'`
test-cover: ## run all tests in project against the RPC URL specified in the RPC_URL env variable or localhost and report coverage
@go test -race -coverprofile=coverage.txt -covermode=atomic `go list ./... | grep -v '/gethrpc'`
test-dockerized: ## run all tests in a docker container against the Substrate Default Docker image
test-dockerized: run-substrate-docker
@sleep 15
@docker-compose build; docker-compose up --abort-on-container-exit gsrpc-test
run-substrate-docker: ## starts the Substrate Docker image
@docker-compose up -d substrate
generate-mocks: ## generate mocks
@docker run -v `pwd`:/app -w /app --entrypoint /bin/sh vektra/mockery:v2.13.0-beta.1 -c 'go generate ./...'
help: ## shows this help
@sed -ne '/@sed/!s/## //p' $(MAKEFILE_LIST)
.PHONY: clean lint lint-fix test test-cover test-dockerized run-substrate-docker generate-mocks