|
@@ -167,7 +167,7 @@ func deleteHostRelay(w http.ResponseWriter, r *http.Request) {
|
|
w.Header().Set("Content-Type", "application/json")
|
|
w.Header().Set("Content-Type", "application/json")
|
|
var params = mux.Vars(r)
|
|
var params = mux.Vars(r)
|
|
hostid := params["hostid"]
|
|
hostid := params["hostid"]
|
|
- relayHost, _, err := logic.DeleteHostRelay(hostid)
|
|
|
|
|
|
+ relayHost, relayed, err := logic.DeleteHostRelay(hostid)
|
|
if err != nil {
|
|
if err != nil {
|
|
logger.Log(0, r.Header.Get("user"), "error decoding request body: ", err.Error())
|
|
logger.Log(0, r.Header.Get("user"), "error decoding request body: ", err.Error())
|
|
logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest"))
|
|
logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest"))
|
|
@@ -178,6 +178,20 @@ func deleteHostRelay(w http.ResponseWriter, r *http.Request) {
|
|
if err := mq.PublishPeerUpdate(); err != nil {
|
|
if err := mq.PublishPeerUpdate(); err != nil {
|
|
logger.Log(0, "fail to publish peer update: ", err.Error())
|
|
logger.Log(0, "fail to publish peer update: ", err.Error())
|
|
}
|
|
}
|
|
|
|
+ if err := mq.HostUpdate(&models.HostUpdate{
|
|
|
|
+ Action: models.UpdateHost,
|
|
|
|
+ Host: *relayHost,
|
|
|
|
+ }); err != nil {
|
|
|
|
+ logger.Log(0, "failed to send host update: ", relayHost.Name, err.Error())
|
|
|
|
+ }
|
|
|
|
+ for _, relayedHost := range relayed {
|
|
|
|
+ if err := mq.HostUpdate(&models.HostUpdate{
|
|
|
|
+ Action: models.UpdateHost,
|
|
|
|
+ Host: relayedHost,
|
|
|
|
+ }); err != nil {
|
|
|
|
+ logger.Log(0, "failed to send host update: ", relayedHost.Name, err.Error())
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}()
|
|
}()
|
|
apiHostData := relayHost.ConvertNMHostToAPI()
|
|
apiHostData := relayHost.ConvertNMHostToAPI()
|
|
w.WriteHeader(http.StatusOK)
|
|
w.WriteHeader(http.StatusOK)
|