legacy.go 982 B

1234567891011121314151617181920212223242526272829303132333435
  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))).Methods(http.MethodDelete)
  10. }
  11. // swagger:route DELETE /api/v1/legacy/nodes nodes wipeLegacyNodes
  12. //
  13. // Delete all legacy nodes from DB.
  14. //
  15. // Schemes: https
  16. //
  17. // Security:
  18. // oauth
  19. //
  20. // Responses:
  21. // 200: wipeLegacyNodesResponse
  22. func wipeLegacyNodes(w http.ResponseWriter, r *http.Request) {
  23. // Set header
  24. w.Header().Set("Content-Type", "application/json")
  25. if err := logic.RemoveAllLegacyNodes(); err != nil {
  26. logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest"))
  27. logger.Log(0, "error occurred when removing legacy nodes", err.Error())
  28. }
  29. logger.Log(0, r.Header.Get("user"), "wiped legacy nodes")
  30. logic.ReturnSuccessResponse(w, r, "wiped all legacy nodes")
  31. }