forked from ory/kratos
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
70 lines (56 loc) · 2.04 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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
SHELL=/bin/bash -o pipefail
all:
ifeq (, $(shell which golangci-lint))
curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(go env GOPATH)/bin v1.17.1
endif
.PHONY: build
build:
make sqlbin
CGO_ENABLED=0 GO111MODULE=on GOOS=linux GOARCH=amd64 go build -o kratos .
.PHONY: init
init:
go install \
github.com/sqs/goreturns \
github.com/ory/x/tools/listx \
github.com/ory/go-acc \
github.com/golang/mock/mockgen \
github.com/go-swagger/go-swagger/cmd/swagger \
golang.org/x/tools/cmd/goimports
.PHONY: lint
lint:
GO111MODULE=on golangci-lint run
.PHONY: format
format:
$$(go env GOPATH)/bin/goreturns -w -local github.com/ory $$($$(go env GOPATH)/bin/listx .)
.PHONY: cover
cover:
go test ./... -coverprofile=cover.out
go tool cover -func=cover.out
.PHONY: sdk
sdk:
GO111MODULE=on go mod tidy
GO111MODULE=on go mod vendor
GO111MODULE=off swagger generate spec -x sdk/go/kratos -m -o ./docs/api.swagger.json
GO111MODULE=off swagger validate ./docs/api.swagger.json
rm -rf ./sdk/go/kratos/*
GO111MODULE=off swagger generate client -f ./docs/api.swagger.json -t sdk/go/kratos -A Ory_Kratos
cd sdk/go/kratos; goreturns -w -i -local github.com/ory $$(listx .)
rm -rf ./vendor
.PHONE: mocks
mocks:
mockgen -mock_names Manager=MockLoginExecutorDependencies -package internal -destination internal/hook_login_executor_dependencies.go github.com/ory/kratos/selfservice loginExecutorDependencies
.PHONY: install
install:
packr2 || (GO111MODULE=on go install github.com/gobuffalo/packr/v2/packr2 && packr2)
GO111MODULE=on go install .
packr2 clean
# Adds sql files to the binary using go-bindata
.PHONY: sqlbin
sqlbin:
cd driver; go-bindata -o sql_migration_files.go -pkg driver ../contrib/sql/...
# Resets the test databases
.PHONY: resetdb
resetdb:
docker kill hydra_test_database_postgres || true
docker rm -f hydra_test_database_postgres || true
docker run --rm --name hydra_test_database_postgres -p 3445:5432 -e POSTGRES_PASSWORD=secret -e POSTGRES_DB=hydra -d postgres:9.6