legacy.go 1023 B

12345678910111213141516171819202122232425262728293031
  1. package controller
  2. import (
  3. "net/http"
  4. "github.com/gorilla/mux"
  5. "github.com/gravitl/netmaker/logger"
  6. "github.com/gravitl/netmaker/logic"
  7. )
  8. func legacyHandlers(r *mux.Router) {
  9. r.HandleFunc("/api/v1/legacy/nodes", logic.SecurityCheck(true, http.HandlerFunc(wipeLegacyNodes))).
  10. Methods(http.MethodDelete)
  11. }
  12. // @Summary Delete all legacy nodes from DB.
  13. // @Router /api/v1/legacy/nodes [delete]
  14. // @Tags Nodes
  15. // @Security oauth2
  16. // @Success 200 {string} string "Wiped all legacy nodes."
  17. // @Failure 400 {object} models.ErrorResponse
  18. func wipeLegacyNodes(w http.ResponseWriter, r *http.Request) {
  19. // Set header
  20. w.Header().Set("Content-Type", "application/json")
  21. if err := logic.RemoveAllLegacyNodes(); err != nil {
  22. logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest"))
  23. logger.Log(0, "error occurred when removing legacy nodes", err.Error())
  24. }
  25. logger.Log(0, r.Header.Get("user"), "wiped legacy nodes")
  26. logic.ReturnSuccessResponse(w, r, "wiped all legacy nodes")
  27. }