Skip to content

Commit b26c652

Browse files
authored
chore: make tools indirect dependencies (#4345)
1 parent 80183b6 commit b26c652

File tree

20 files changed

+629
-728
lines changed

20 files changed

+629
-728
lines changed

.github/workflows/ci.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
ports:
3737
- 5432:5432
3838
mysql:
39-
image: mysql:8.0
39+
image: mysql:8.4
4040
env:
4141
MYSQL_ROOT_PASSWORD: test
4242
ports:
@@ -99,7 +99,7 @@ jobs:
9999
version: v1.64.5
100100
- name: Build Kratos
101101
run: make install
102-
- name: Run go-acc (tests)
102+
- name: Run go tests
103103
run: make test-coverage
104104
- name: Submit to Codecov
105105
run: |
@@ -122,7 +122,7 @@ jobs:
122122
ports:
123123
- 5432:5432
124124
mysql:
125-
image: mysql:8.0
125+
image: mysql:8.4
126126
env:
127127
MYSQL_ROOT_PASSWORD: test
128128
ports:
@@ -236,7 +236,7 @@ jobs:
236236
ports:
237237
- 5432:5432
238238
mysql:
239-
image: mysql:8.0
239+
image: mysql:8.4
240240
env:
241241
MYSQL_ROOT_PASSWORD: test
242242
ports:

.vscode/tasks.json

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,6 @@
3131
}
3232
}
3333
},
34-
{
35-
"label": "Kratos: install mailhog",
36-
"type": "shell",
37-
"command": "make .bin/MailHog"
38-
},
3934
{
4035
"label": "Kratos: start mailhog",
4136
"type": "shell",
@@ -44,9 +39,8 @@
4439
"reveal": "always",
4540
"panel": "dedicated"
4641
},
47-
"dependsOn": ["Kratos: install mailhog"],
4842
"isBackground": true,
49-
"command": "${workspaceFolder}/.bin/MailHog -smtp-bind-addr=localhost:8026",
43+
"command": "go tool MailHog -smtp-bind-addr=localhost:8026",
5044
"problemMatcher": {
5145
"pattern": {
5246
"regexp": ""

Makefile

Lines changed: 17 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -12,29 +12,10 @@ export VCS_REF := $(shell git rev-parse HEAD)
1212
export QUICKSTART_OPTIONS ?= ""
1313
export IMAGE_TAG := $(if $(IMAGE_TAG),$(IMAGE_TAG),latest)
1414

15-
GO_DEPENDENCIES = github.com/ory/go-acc \
16-
github.com/golang/mock/mockgen \
17-
github.com/go-swagger/go-swagger/cmd/swagger \
18-
golang.org/x/tools/cmd/goimports \
19-
github.com/mattn/goveralls \
20-
github.com/cortesi/modd/cmd/modd \
21-
github.com/mailhog/MailHog
22-
23-
define make-go-dependency
24-
# go install is responsible for not re-building when the code hasn't changed
25-
.bin/$(notdir $1): go.mod go.sum
26-
GOBIN=$(PWD)/.bin/ go install $1
27-
endef
28-
$(foreach dep, $(GO_DEPENDENCIES), $(eval $(call make-go-dependency, $(dep))))
29-
$(call make-lint-dependency)
30-
3115
.bin/clidoc:
3216
echo "deprecated usage, use docs/cli instead"
3317
go build -o .bin/clidoc ./cmd/clidoc/.
3418

35-
.bin/yq: Makefile
36-
GOBIN=$(PWD)/.bin go install github.com/mikefarah/yq/[email protected]
37-
3819
.PHONY: docs/cli
3920
docs/cli:
4021
go run ./cmd/clidoc/. .
@@ -69,15 +50,15 @@ lint: .bin/golangci-lint
6950
.bin/buf lint
7051

7152
.PHONY: mocks
72-
mocks: .bin/mockgen
73-
mockgen -mock_names Manager=MockLoginExecutorDependencies -package internal -destination internal/hook_login_executor_dependencies.go github.com/ory/kratos/selfservice loginExecutorDependencies
53+
mocks:
54+
go tool mockgen -mock_names Manager=MockLoginExecutorDependencies -package internal -destination internal/hook_login_executor_dependencies.go github.com/ory/kratos/selfservice loginExecutorDependencies
7455

7556
.PHONY: proto
7657
proto: gen/oidc/v1/state.pb.go
7758

78-
gen/oidc/v1/state.pb.go: proto/oidc/v1/state.proto buf.yaml buf.gen.yaml .bin/buf .bin/goimports
59+
gen/oidc/v1/state.pb.go: proto/oidc/v1/state.proto buf.yaml buf.gen.yaml .bin/buf
7960
.bin/buf generate
80-
.bin/goimports -w gen/
61+
go tool goimports -w gen/
8162

8263
.PHONY: install
8364
install:
@@ -95,25 +76,25 @@ test-short:
9576
go test -tags sqlite -count=1 -failfast -short ./...
9677

9778
.PHONY: test-coverage
98-
test-coverage: .bin/go-acc .bin/goveralls
99-
go-acc -o coverage.out ./... -- -failfast -timeout=20m -tags sqlite,json1
79+
test-coverage:
80+
go test -coverprofile=coverage.out -failfast -timeout=20m -tags sqlite ./...
10081

10182
.PHONY: test-coverage-next
102-
test-coverage-next: .bin/go-acc .bin/goveralls
103-
go test -short -failfast -timeout=20m -tags sqlite,json1 -cover ./... --args test.gocoverdir="$$PWD/coverage"
83+
test-coverage-next:
84+
go test -short -failfast -timeout=20m -tags sqlite -cover ./... --args test.gocoverdir="$$PWD/coverage"
10485
go tool covdata percent -i=coverage
10586
go tool covdata textfmt -i=./coverage -o coverage.new.out
10687

10788
# Generates the SDK
10889
.PHONY: sdk
109-
sdk: .bin/swagger .bin/ory node_modules
110-
swagger generate spec -m -o spec/swagger.json \
90+
sdk: .bin/ory node_modules
91+
go tool swagger generate spec -m -o spec/swagger.json \
11192
-c github.com/ory/kratos \
11293
-c github.com/ory/x/healthx \
11394
-c github.com/ory/x/crdbx \
11495
-c github.com/ory/x/openapix
11596
ory dev swagger sanitize ./spec/swagger.json
116-
swagger validate ./spec/swagger.json
97+
go tool swagger validate ./spec/swagger.json
11798
CIRCLE_PROJECT_USERNAME=ory CIRCLE_PROJECT_REPONAME=kratos \
11899
ory dev openapi migrate \
119100
--health-path-tags metadata \
@@ -174,9 +155,9 @@ authors: # updates the AUTHORS file
174155

175156
# Formats the code
176157
.PHONY: format
177-
format: .bin/goimports .bin/ory node_modules .bin/buf
158+
format: .bin/ory node_modules .bin/buf
178159
.bin/ory dev headers copyright --exclude=gen --exclude=internal/httpclient --exclude=internal/client-go --exclude test/e2e/proxy/node_modules --exclude test/e2e/node_modules --exclude node_modules
179-
goimports -w -local github.com/ory .
160+
go tool goimports -w -local github.com/ory .
180161
npm exec -- prettier --write 'test/e2e/**/*{.ts,.js}'
181162
npm exec -- prettier --write '.github'
182163
.bin/buf format --write
@@ -205,10 +186,10 @@ test-refresh:
205186
UPDATE_SNAPSHOTS=true go test -tags sqlite,json1,refresh -short ./...
206187

207188
.PHONY: post-release
208-
post-release: .bin/yq
209-
cat quickstart.yml | yq '.services.kratos.image = "oryd/kratos:'$$DOCKER_TAG'"' | sponge quickstart.yml
210-
cat quickstart.yml | yq '.services.kratos-migrate.image = "oryd/kratos:'$$DOCKER_TAG'"' | sponge quickstart.yml
211-
cat quickstart.yml | yq '.services.kratos-selfservice-ui-node.image = "oryd/kratos-selfservice-ui-node:'$$DOCKER_TAG'"' | sponge quickstart.yml
189+
post-release:
190+
cat quickstart.yml | go tool yq '.services.kratos.image = "oryd/kratos:'$$DOCKER_TAG'"' | sponge quickstart.yml
191+
cat quickstart.yml | go tool yq '.services.kratos-migrate.image = "oryd/kratos:'$$DOCKER_TAG'"' | sponge quickstart.yml
192+
cat quickstart.yml | go tool yq '.services.kratos-selfservice-ui-node.image = "oryd/kratos-selfservice-ui-node:'$$DOCKER_TAG'"' | sponge quickstart.yml
212193

213194
licenses: .bin/licenses node_modules # checks open-source licenses
214195
.bin/licenses

0 commit comments

Comments
 (0)