package middleware

import (
	"github.com/labstack/echo/v4"
	"github.com/labstack/echo/v4/middleware"
	"github.com/labstack/gommon/log"

	"github.com/pingcap/test-infra/services/tcms/utils"
)

func Setup(e *echo.Echo) {
	e.Pre(middleware.RemoveTrailingSlash())
	e.Use(RequestID(utils.NewReqID))
	e.Use(ServerTiming)
	e.Use(middleware.BodyLimit("2M"))
	e.Use(middleware.CORS())
	e.Use(middleware.Secure())
	e.Use(middleware.RecoverWithConfig(middleware.RecoverConfig{
		LogLevel: log.ERROR,
	}))
}
