demo_web_app icon indicating copy to clipboard operation
demo_web_app copied to clipboard

swaggerize wip

Open nanonull opened this issue 4 years ago • 0 comments

WIP docs https://github.com/rswag/rswag

Steps:

  1. Generate specs Current specs in rails-demo-app are not swagger-compatible, so they have to be rewriten. It is possible to generate spec from controller definition:

$ rails generate rspec:swagger API::V1:ArticlesController

Need to repeat command for all 5 controllers in app/controllers/api/v1 This command will generate only basic specs, so they still will require some manual edits.

  1. Generate swagger.json using specs

$ rake rswag:specs:swaggerize

  1. After swagger.json is generated it is possible to: 3.1. generate API client https://github.com/swagger-api/swagger-codegen

Example cmd used to generate client:

$ java -jar /Users/dmytro/Desktop/swagger/swagger-codegen-cli-2.4.10.jar generate
-i swagger.json
-l java
-o delphius-api-client

3.2. generate server stubs https://github.com/OpenAPITools/openapi-generator/wiki/Server-stub-generator-HOWTO#ruby-on-rails-5

nanonull avatar Mar 01 '20 17:03 nanonull