mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-07 17:51:56 +08:00
publish update on relay create
This commit is contained in:
@@ -123,12 +123,24 @@ func createHostRelay(w http.ResponseWriter, r *http.Request) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if err := mq.HostUpdate(&models.HostUpdate{
|
||||||
|
Action: models.UpdateHost,
|
||||||
|
Host: *relayHost,
|
||||||
|
}); err != nil {
|
||||||
|
logger.Log(0, "failed to send host update: ", relayHost.ID.String(), err.Error())
|
||||||
|
}
|
||||||
logger.Log(1, r.Header.Get("user"), "created relay on host", relay.HostID)
|
logger.Log(1, r.Header.Get("user"), "created relay on host", relay.HostID)
|
||||||
go func(relayHostID string) {
|
go func(relayHostID string) {
|
||||||
relatedhosts := logic.GetRelatedHosts(relayHostID)
|
relatedhosts := logic.GetRelatedHosts(relayHostID)
|
||||||
for _, relatedHost := range relatedhosts {
|
for _, relatedHost := range relatedhosts {
|
||||||
relatedHost.ProxyEnabled = true
|
relatedHost.ProxyEnabled = true
|
||||||
logic.UpsertHost(&relatedHost)
|
logic.UpsertHost(&relatedHost)
|
||||||
|
if err := mq.HostUpdate(&models.HostUpdate{
|
||||||
|
Action: models.UpdateHost,
|
||||||
|
Host: relatedHost,
|
||||||
|
}); err != nil {
|
||||||
|
logger.Log(0, "failed to send host update: ", relatedHost.ID.String(), err.Error())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
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())
|
||||||
|
@@ -266,7 +266,7 @@ func GetProxyUpdateForHost(host *models.Host) (models.ProxyManagerPayload, error
|
|||||||
if peerHost.IsRelayed && peerHost.RelayedBy != host.ID.String() {
|
if peerHost.IsRelayed && peerHost.RelayedBy != host.ID.String() {
|
||||||
relayHost, err := GetHost(peerHost.RelayedBy)
|
relayHost, err := GetHost(peerHost.RelayedBy)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
relayTo, err := net.ResolveUDPAddr("udp", fmt.Sprintf("%s:%d", relayHost.EndpointIP, getPeerListenPort(peerHost)))
|
relayTo, err := net.ResolveUDPAddr("udp", fmt.Sprintf("%s:%d", relayHost.EndpointIP, getPeerListenPort(relayHost)))
|
||||||
if err == nil {
|
if err == nil {
|
||||||
currPeerConf.IsRelayed = true
|
currPeerConf.IsRelayed = true
|
||||||
currPeerConf.RelayedTo = relayTo
|
currPeerConf.RelayedTo = relayTo
|
||||||
|
Reference in New Issue
Block a user