diff --git a/Gemfile b/Gemfile index 95c92d6d5..902b0dbca 100644 --- a/Gemfile +++ b/Gemfile @@ -124,6 +124,13 @@ group :development do gem "foreman" end +group :development, :test do + gem "rspec-rails" + gem "rswag-api" + gem "rswag-specs" + gem "rswag-ui" +end + group :test do gem "capybara" gem "selenium-webdriver" @@ -132,8 +139,4 @@ group :test do gem "webmock" gem "climate_control" gem "simplecov", require: false - gem "rspec-rails" - gem "rswag-api" - gem "rswag-specs" - gem "rswag-ui" end diff --git a/config/initializers/rswag.rb b/config/initializers/rswag.rb new file mode 100644 index 000000000..5bef48784 --- /dev/null +++ b/config/initializers/rswag.rb @@ -0,0 +1,11 @@ +if defined?(Rswag::Ui) && Rails.env.development? + Rswag::Ui.configure do |c| + c.openapi_endpoint "/api-docs/openapi.yaml", "Sure API V1" + end +end + +if defined?(Rswag::Api) && Rails.env.development? + Rswag::Api.configure do |c| + c.openapi_root = Rails.root.join("docs", "api").to_s + end +end diff --git a/config/routes.rb b/config/routes.rb index c53acbc85..9ef960239 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -107,6 +107,11 @@ Rails.application.routes.draw do mount Lookbook::Engine, at: "/design-system" + if Rails.env.development? + mount Rswag::Api::Engine => "/api-docs" + mount Rswag::Ui::Engine => "/api-docs" + end + # Uses basic auth - see config/initializers/sidekiq.rb mount Sidekiq::Web => "/sidekiq"