controller
controller copied to clipboard
Specify the API using swagger
This issue is for investigating swagger server stub code generators for Python & Django Rest Framework, and then if there is a suitable one that won't require a large refactor of this codebase, doing the following:
- Writing a swagger specification for the controller's full API
- Generating server stubs and refactoring this codebase into the stubs
- Generate the Go client bindings in deis/builder and deis/workflow-cli (each to be done in a separate issue in the respective repository)
- The changes in deis/workflow-cli may move to a new repo if https://github.com/deis/workflow-cli/issues/18 is completed first
You are duplicating yourself, up to you which one you keep open
https://github.com/deis/controller/issues/289
Ugh sorry. Closing the other one since this one is more specific
https://github.com/marcgibbons/django-rest-swagger may be helpful for this
Already tried it - doesn't work and isn't maintained :(
Our best bet is Marshmallow (a schema / serializer like project) and the DRF integration for that. Marshmallow has swagger and json API support as well.
Looks like DRF 3.0 is going to have Core API support (sponsored by Mozilla) but it may not be ready anytime soon
Just leaving this here for now https://github.com/civisanalytics/swagger-diff, https://github.com/keis/swagger-markup and http://swagger.io/using-swagger-to-detect-breaking-api-changes/