func GetDeleteTemplateHandler()

in alertmanager/handlers/template_handlers.go [213:232]


func GetDeleteTemplateHandler(amClient client.AlertmanagerClient, tmplClient client.TemplateClient) func(c echo.Context) error {
	return func(c echo.Context) error {
		filename := c.Get(templateFilenameParam).(string)
		tmplName := c.Get(templateNameParam).(string)

		exists, err := fileExists(amClient, tmplClient, filename)
		if err != nil {
			return echo.NewHTTPError(http.StatusInternalServerError, err)
		}
		if !exists {
			return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("error getting template: file %s does not exist", filename))
		}

		err = tmplClient.DeleteTemplate(filename, tmplName)
		if err != nil {
			return echo.NewHTTPError(http.StatusInternalServerError, fmt.Sprintf("error deleting template: %s", err.Error()))
		}
		return c.NoContent(http.StatusOK)
	}
}