Skip to content

Commit 6a9b0ca

Browse files
authored
Add grpc gateway missing endpoints to swagger docs (#8232)
* Add missing endpoints * Fix swagger gen * update * Update static.go * Fix format * Fix tests
1 parent ed7bd24 commit 6a9b0ca

File tree

10 files changed

+25527
-14884
lines changed

10 files changed

+25527
-14884
lines changed

Makefile

+10
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,16 @@ go.sum: go.mod
176176
### Documentation ###
177177
###############################################################################
178178

179+
update-swagger-docs: statik
180+
$(BINDIR)/statik -src=client/docs/swagger-ui -dest=client/docs -f -m
181+
@if [ -n "$(git status --porcelain)" ]; then \
182+
echo "\033[91mSwagger docs are out of sync!!!\033[0m";\
183+
exit 1;\
184+
else \
185+
echo "\033[92mSwagger docs are in sync\033[0m";\
186+
fi
187+
.PHONY: update-swagger-docs
188+
179189
godocs:
180190
@echo "--> Wait a few seconds and visit http://localhost:6060/pkg/github.com/cosmos/cosmos-sdk/types"
181191
godoc -http=:6060

client/docs/config.json

+14
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@
2828
}
2929
}
3030
},
31+
{
32+
"url": "./tmp-swagger-gen/cosmos/base/tendermint/v1beta1/query.swagger.json",
33+
"operationIds": {
34+
"rename": {
35+
"Params": "BaseParams"
36+
}
37+
}
38+
},
3139
{
3240
"url": "./tmp-swagger-gen/cosmos/distribution/v1beta1/query.swagger.json",
3341
"operationIds": {
@@ -85,6 +93,12 @@
8593
}
8694
}
8795
},
96+
{
97+
"url": "./tmp-swagger-gen/cosmos/tx/v1beta1/service.swagger.json",
98+
"dereference": {
99+
"circular": "ignore"
100+
}
101+
},
88102
{
89103
"url": "./tmp-swagger-gen/cosmos/upgrade/v1beta1/query.swagger.json",
90104
"operationIds": {

client/docs/statik/statik.go

+5-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/docs/swagger-ui/swagger.yaml

+25,369-14,746
Large diffs are not rendered by default.

client/grpc/tmservice/query.pb.go

+68-68
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/grpc/tmservice/query.pb.gw.go

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/grpc/tmservice/service_test.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,11 @@ func (s IntegrationTestSuite) TestQueryLatestValidatorSet() {
117117
s.Require().NoError(err)
118118

119119
// rest request without pagination
120-
_, err = rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validators/latest", val.APIAddress))
120+
_, err = rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validatorsets/latest", val.APIAddress))
121121
s.Require().NoError(err)
122122

123123
// rest request with pagination
124-
restRes, err := rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validators/latest?pagination.offset=%d&pagination.limit=%d", val.APIAddress, 0, 1))
124+
restRes, err := rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validatorsets/latest?pagination.offset=%d&pagination.limit=%d", val.APIAddress, 0, 1))
125125
s.Require().NoError(err)
126126
var validatorSetRes tmservice.GetLatestValidatorSetResponse
127127
s.Require().NoError(val.ClientCtx.JSONMarshaler.UnmarshalJSON(restRes, &validatorSetRes))
@@ -150,11 +150,11 @@ func (s IntegrationTestSuite) TestQueryValidatorSetByHeight() {
150150
s.Require().NoError(err)
151151

152152
// no pagination rest
153-
_, err = rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validators/%d", val.APIAddress, 1))
153+
_, err = rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validatorsets/%d", val.APIAddress, 1))
154154
s.Require().NoError(err)
155155

156156
// rest query with pagination
157-
restRes, err := rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validators/%d?pagination.offset=%d&pagination.limit=%d", val.APIAddress, 1, 0, 1))
157+
restRes, err := rest.GetRequest(fmt.Sprintf("%s/cosmos/base/tendermint/v1beta1/validatorsets/%d?pagination.offset=%d&pagination.limit=%d", val.APIAddress, 1, 0, 1))
158158
var validatorSetRes tmservice.GetValidatorSetByHeightResponse
159159
s.Require().NoError(val.ClientCtx.JSONMarshaler.UnmarshalJSON(restRes, &validatorSetRes))
160160
}

proto/cosmos/base/tendermint/v1beta1/query.proto

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ service Service {
3232

3333
// GetLatestValidatorSet queries latest validator-set.
3434
rpc GetLatestValidatorSet(GetLatestValidatorSetRequest) returns (GetLatestValidatorSetResponse) {
35-
option (google.api.http).get = "/cosmos/base/tendermint/v1beta1/validators/latest";
35+
option (google.api.http).get = "/cosmos/base/tendermint/v1beta1/validatorsets/latest";
3636
}
3737
// GetValidatorSetByHeight queries validator-set at a given height.
3838
rpc GetValidatorSetByHeight(GetValidatorSetByHeightRequest) returns (GetValidatorSetByHeightResponse) {
39-
option (google.api.http).get = "/cosmos/base/tendermint/v1beta1/validators/{height}";
39+
option (google.api.http).get = "/cosmos/base/tendermint/v1beta1/validatorsets/{height}";
4040
}
4141
}
4242

scripts/protoc-swagger-gen.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ proto_dirs=$(find ./proto -path -prune -o -name '*.proto' -print0 | xargs -0 -n1
77
for dir in $proto_dirs; do
88

99
# generate swagger files (filter query files)
10-
query_file=$(find "${dir}" -maxdepth 1 -name 'query.proto')
10+
query_file=$(find "${dir}" -maxdepth 1 \( -name 'query.proto' -o -name 'service.proto' \))
1111
if [[ ! -z "$query_file" ]]; then
1212
buf protoc \
1313
-I "proto" \

0 commit comments

Comments
 (0)