script/rswag
#!/usr/bin/env bash
# Generate the API documentation based on our specs.
#
# For API v0 and v1 you can call one of these:
#
# ./bin/rake rswag
# ./script/rswag --dry-run
#
# For the DFC API you need to call:
#
# ./script/rswag engines/dfc_provider
#
# The standard way to generate the documentation is `rake rswag` which calls
# rspec under the hood. We have a few customisations to the rspec call though
# which only work when calling rspec ourselves.
#
# - We actually run the specs to generate examples instead of a dry run.
# While rswag has an RSWAG_DRY_RUN switch, it doesn't work with our setup.
# - We run only tagged swagger specs instead of all matching the pattern.
exec ./bin/rspec\
--tag "swagger_doc"\
--format "Rswag::Specs::SwaggerFormatter"\
--order "defined"\
"${@:1}"