kamu-api-client-mt: autogenerated REST API client#1189
kamu-api-client-mt: autogenerated REST API client#1189
kamu-api-client-mt: autogenerated REST API client#1189Conversation
…keep fmt --check happy
…keep fmt --check happy [2]
3c4d8c8 to
128e597
Compare
|
|
||
|
|
||
| .PHONY: codegen-openapi-mt-client | ||
| codegen-openapi-mt-client: |
There was a problem hiding this comment.
Oh my, I don't know how I feel about including such codegenned client crate...
Having it tied to CI, and using typed interfaces would bring us same benefits we are reaping from GQL codegen in Web UI already, so it probably makes sense. But I didn't think we would dedicate time to this at this stage.
If we were to adopt this there are a few things I'd like to see:
-
Make sure it doesn't bring in new heavy depenencies, ie.:
- It depents on same versions of e.g.
reqwestandtokiothat we are using and not pulls in a whole separate stack- I already see an issue that it pulls in
opensslwhile the rest of the code is usingrustls- this is a big no-no for me
- I already see an issue that it pulls in
- It depents on same versions of e.g.
-
Let's get rid of auto-generated markdown docs - they just duplicate existing OpenAPI spec and don't bring any value.
-
I don't think it belongs in
odflayer as it uses endpoints from Kamu
There was a problem hiding this comment.
Having it tied to CI, and using typed interfaces would bring us same benefits we are reaping from GQL codegen in Web UI already, so it probably makes sense.
To be honest, I've been eyeing autogeneration since the days of E2E test integration. In those, I manually make HTTP calls on the spot (cheap and fast).
Once again, when I needed to make an HTTP request to kamu-node (in #1188), I thought it's time to take a couple of hours to make a typed REST API client.
Make sure it doesn't bring in new heavy depenencies, ie.:
Revised the dependencies, the unnecessary ones are now unused.
Fixed
Let's get rid of auto-generated markdown docs - they just duplicate existing OpenAPI spec and don't bring any value.
Done
I don't think it belongs in odf layer as it uses endpoints from Kamu
Fair point -- moved it to src/utils/kamu-api-client-mt
Fixed
opendatafabric-openapi-mt-client: autogenerated client for ODF REST APIcodegen-kamu-api-client-mt: autogenerated client for ODF REST API
codegen-kamu-api-client-mt: autogenerated client for ODF REST APIkamu-api-client-mt: autogenerated REST API client
|
I guess we need it for API server more than for CLI. Another point, whether it should be a part of our workspace, or externalized? Should we have versioning, if we are externalizing this? |
Description
Backported from #1188
Cargo.tomltemplate.make codegen-kamu-api-client-mttarget for the client generation.Added
kamu-api-client-mt: autogenerated REST API clientChecklist before requesting a review