mirror of https://github.com/status-im/consul.git
parent
67a0689f71
commit
91569a7ceb
|
@ -1620,8 +1620,8 @@ func (a *Agent) RemoveService(serviceID string, persist bool) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deregister any associated health checks
|
// Deregister any associated health checks
|
||||||
for checkID, check := range a.state.Checks() {
|
for checkID, health := range a.state.Checks() {
|
||||||
if check.ServiceID != serviceID {
|
if health.ServiceID != serviceID {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if err := a.RemoveCheck(checkID, persist); err != nil {
|
if err := a.RemoveCheck(checkID, persist); err != nil {
|
||||||
|
@ -1653,11 +1653,11 @@ func (a *Agent) AddCheck(check *structs.HealthCheck, chkType *structs.CheckType,
|
||||||
}
|
}
|
||||||
|
|
||||||
if check.ServiceID != "" {
|
if check.ServiceID != "" {
|
||||||
s := a.state.Services()[check.ServiceID]
|
svc, ok := a.state.Services()[check.ServiceID]
|
||||||
if s == nil {
|
if !ok {
|
||||||
return fmt.Errorf("ServiceID %q does not exist", check.ServiceID)
|
return fmt.Errorf("ServiceID %q does not exist", check.ServiceID)
|
||||||
}
|
}
|
||||||
check.ServiceName = s.Service
|
check.ServiceName = svc.Service
|
||||||
}
|
}
|
||||||
|
|
||||||
a.checkLock.Lock()
|
a.checkLock.Lock()
|
||||||
|
@ -2159,11 +2159,12 @@ func (a *Agent) loadServices(conf *config.RuntimeConfig) error {
|
||||||
// unloadServices will deregister all services other than the 'consul' service
|
// unloadServices will deregister all services other than the 'consul' service
|
||||||
// known to the local agent.
|
// known to the local agent.
|
||||||
func (a *Agent) unloadServices() error {
|
func (a *Agent) unloadServices() error {
|
||||||
for id := range a.state.Services() {
|
for _, service := range a.state.Services() {
|
||||||
if err := a.RemoveService(id, false); err != nil {
|
if err := a.RemoveService(service.ID, false); err != nil {
|
||||||
return fmt.Errorf("Failed deregistering service '%s': %v", id, err)
|
return fmt.Errorf("Failed deregistering service '%s': %v", service.ID, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2246,11 +2247,12 @@ func (a *Agent) loadChecks(conf *config.RuntimeConfig) error {
|
||||||
|
|
||||||
// unloadChecks will deregister all checks known to the local agent.
|
// unloadChecks will deregister all checks known to the local agent.
|
||||||
func (a *Agent) unloadChecks() error {
|
func (a *Agent) unloadChecks() error {
|
||||||
for id := range a.state.Checks() {
|
for _, check := range a.state.Checks() {
|
||||||
if err := a.RemoveCheck(id, false); err != nil {
|
if err := a.RemoveCheck(check.CheckID, false); err != nil {
|
||||||
return fmt.Errorf("Failed deregistering check '%s': %s", id, err)
|
return fmt.Errorf("Failed deregistering check '%s': %s", check.CheckID, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue