mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
api: add support for deleting apps (#327)
* api: add support for deleting apps Fixes #274 * functions: improve error name and description * functions: fix test regression
This commit is contained in:
@@ -14,13 +14,25 @@ func handleAppDelete(c *gin.Context) {
|
||||
log := common.Logger(ctx)
|
||||
|
||||
appName := c.Param("app")
|
||||
err := Api.Datastore.RemoveApp(appName)
|
||||
|
||||
routes, err := Api.Datastore.GetRoutesByApp(appName, &models.RouteFilter{})
|
||||
if err != nil {
|
||||
log.WithError(err).Debug(models.ErrAppsRemoving)
|
||||
c.JSON(http.StatusInternalServerError, simpleError(models.ErrAppsRemoving))
|
||||
return
|
||||
}
|
||||
|
||||
if len(routes) > 0 {
|
||||
log.WithError(err).Debug(models.ErrDeleteAppsWithRoutes)
|
||||
c.JSON(http.StatusBadRequest, simpleError(models.ErrDeleteAppsWithRoutes))
|
||||
return
|
||||
}
|
||||
|
||||
if err := Api.Datastore.RemoveApp(appName); err != nil {
|
||||
log.WithError(err).Debug(models.ErrAppsRemoving)
|
||||
c.JSON(http.StatusInternalServerError, simpleError(models.ErrAppsRemoving))
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, gin.H{"message": "App deleted"})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user