package dispatchserver
import (
log "github.com/sirupsen/logrus"
"github.com/vmware/dispatch/pkg/http"
)
func runDispatch(config *serverConfig) {
functionsHandler := initFunctions(config)
secretsHandler := initSecrets(config)
baseImagesHandler := initBaseImages(config)
imagesHandler := initImages(config)
endpointsHandler := initEndpoints(config)
dispatchHandler := &http.AllInOneRouter{
FunctionsHandler: functionsHandler,
SecretsHandler: secretsHandler,
BaseImagesHandler: baseImagesHandler,
ImagesHandler: imagesHandler,
EndpointsHandler: endpointsHandler,
}
handler := addMiddleware(dispatchHandler)
server := httpServer(config)
server.SetHandler(handler)
defer server.Shutdown()
if err := server.Serve(); err != nil {
log.Error(err)
}
}