|
|
@ -1,6 +1,7 @@
|
|
|
|
package agent
|
|
|
|
package agent
|
|
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
import (
|
|
|
|
|
|
|
|
"github.com/hashicorp/consul/consul"
|
|
|
|
"github.com/hashicorp/consul/consul/structs"
|
|
|
|
"github.com/hashicorp/consul/consul/structs"
|
|
|
|
"reflect"
|
|
|
|
"reflect"
|
|
|
|
"sync"
|
|
|
|
"sync"
|
|
|
@ -196,6 +197,11 @@ func (a *Agent) setSyncState() error {
|
|
|
|
// If we don't have the service locally, deregister it
|
|
|
|
// If we don't have the service locally, deregister it
|
|
|
|
existing, ok := a.state.services[id]
|
|
|
|
existing, ok := a.state.services[id]
|
|
|
|
if !ok {
|
|
|
|
if !ok {
|
|
|
|
|
|
|
|
// The Consul service is created automatically, and
|
|
|
|
|
|
|
|
// does not need to be registered
|
|
|
|
|
|
|
|
if id == consul.ConsulServiceID && a.config.Server {
|
|
|
|
|
|
|
|
continue
|
|
|
|
|
|
|
|
}
|
|
|
|
a.state.serviceStatus[id] = syncStatus{remoteDelete: true}
|
|
|
|
a.state.serviceStatus[id] = syncStatus{remoteDelete: true}
|
|
|
|
continue
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -210,6 +216,11 @@ func (a *Agent) setSyncState() error {
|
|
|
|
id := check.CheckID
|
|
|
|
id := check.CheckID
|
|
|
|
existing, ok := a.state.checks[id]
|
|
|
|
existing, ok := a.state.checks[id]
|
|
|
|
if !ok {
|
|
|
|
if !ok {
|
|
|
|
|
|
|
|
// The Serf check is created automatically, and does not
|
|
|
|
|
|
|
|
// need to be registered
|
|
|
|
|
|
|
|
if id == consul.SerfCheckID {
|
|
|
|
|
|
|
|
continue
|
|
|
|
|
|
|
|
}
|
|
|
|
a.state.checkStatus[id] = syncStatus{remoteDelete: true}
|
|
|
|
a.state.checkStatus[id] = syncStatus{remoteDelete: true}
|
|
|
|
continue
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
}
|
|
|
|