github.com/icyphox/x@v0.0.355-0.20220311094250-029bd783e8b8/Makefile (about) 1 SHELL=/bin/bash -o pipefail 2 3 export PATH := .bin:${PATH} 4 5 GO_DEPENDENCIES = github.com/ory/go-acc \ 6 github.com/ory/x/tools/listx \ 7 github.com/jandelgado/gcov2lcov \ 8 github.com/golang/mock/mockgen 9 10 define make-go-dependency 11 # go install is responsible for not re-building when the code hasn't changed 12 .bin/$(notdir $1): go.mod go.sum Makefile 13 GOBIN=$(PWD)/.bin/ go install $1 14 endef 15 $(foreach dep, $(GO_DEPENDENCIES), $(eval $(call make-go-dependency, $(dep)))) 16 $(call make-lint-dependency) 17 18 .bin/ory: Makefile 19 bash <(curl https://raw.githubusercontent.com/ory/cli/master/install.sh) -b .bin v0.0.53 20 touch -a -m .bin/ory 21 22 .PHONY: format 23 format: 24 goimports -w -local github.com/ory . 25 26 .bin/golangci-lint: Makefile 27 bash <(curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh) -d -b .bin v1.28.3 28 29 .PHONY: test 30 test: 31 make resetdb 32 export TEST_DATABASE_POSTGRESQL=postgres://postgres:secret@127.0.0.1:3445/hydra?sslmode=disable; export TEST_DATABASE_COCKROACHDB=cockroach://root@127.0.0.1:3446/defaultdb?sslmode=disable; export TEST_DATABASE_MYSQL='mysql://root:secret@tcp(127.0.0.1:3444)/mysql?parseTime=true&multiStatements=true'; go test -count=1 -tags sqlite ./... 33 34 .PHONY: resetdb 35 resetdb: 36 docker kill hydra_test_database_mysql || true 37 docker kill hydra_test_database_postgres || true 38 docker kill hydra_test_database_cockroach || true 39 docker rm -f hydra_test_database_mysql || true 40 docker rm -f hydra_test_database_postgres || true 41 docker rm -f hydra_test_database_cockroach || true 42 docker run --rm --name hydra_test_database_mysql -p 3444:3306 -e MYSQL_ROOT_PASSWORD=secret -d mysql:8.0 43 docker run --rm --name hydra_test_database_postgres -p 3445:5432 -e POSTGRES_PASSWORD=secret -e POSTGRES_DB=hydra -d postgres:11.8 44 docker run --rm --name hydra_test_database_cockroach -p 3446:26257 -d cockroachdb/cockroach:v21.1.2 start --insecure 45 46 .PHONY: lint 47 lint: .bin/golangci-lint 48 GO111MODULE=on golangci-lint run -v ./... 49 50 .PHONY: migrations-render 51 migrations-render: .bin/ory 52 ory dev pop migration render networkx/migrations/templates networkx/migrations/sql 53 54 .PHONY: migrations-render-replace 55 migrations-render-replace: .bin/ory 56 ory dev pop migration render -r networkx/migrations/templates networkx/migrations/sql