From 7aa8ea9d9d8895d6f165054a1ad927de77b91671 Mon Sep 17 00:00:00 2001 From: Max Leonard Inden Date: Wed, 16 Jan 2019 16:18:05 +0100 Subject: [PATCH] api/v2: Disable serving swagger spec and redoc UI By default go-swagger serves the swagger spec and the redoc UI. This patch disables both. Signed-off-by: Max Leonard Inden --- api/v2/api.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/api/v2/api.go b/api/v2/api.go index a610d605..6240603e 100644 --- a/api/v2/api.go +++ b/api/v2/api.go @@ -91,6 +91,12 @@ func NewAPI(alerts provider.Alerts, sf getAlertStatusFn, silences *silence.Silen // create new service API openAPI := operations.NewAlertmanagerAPI(swaggerSpec) + // Skip swagger spec and redoc middleware, only serving the API itself via + // RoutesHandler. See: https://github.com/go-swagger/go-swagger/issues/1779 + openAPI.Middleware = func(b middleware.Builder) http.Handler { + return middleware.Spec("", nil, openAPI.Context().RoutesHandler(b)) + } + openAPI.AlertGetAlertsHandler = alert_ops.GetAlertsHandlerFunc(api.getAlertsHandler) openAPI.AlertPostAlertsHandler = alert_ops.PostAlertsHandlerFunc(api.postAlertsHandler) openAPI.GeneralGetStatusHandler = general_ops.GetStatusHandlerFunc(api.getStatusHandler)