diff --git a/provider/swarm.go b/provider/swarm.go index 1e726d1..534cdd7 100644 --- a/provider/swarm.go +++ b/provider/swarm.go @@ -96,7 +96,7 @@ func (p SwarmProvider) Scale(serviceId string, target int, direction bool) error // This function validate if a request is acceptable or not. func (p *SwarmProvider) isAcceptable(tasks []swarm.Task, target int, direction bool) error { - if p.calculateActiveTasks(tasks) < target && direction == false { + if p.calculateActiveTasks(tasks) < target || p.calculateActiveTasks(tasks) < 2 && direction == false { return errors.New(fmt.Sprintf("I can not scale down because it has only %d running.", target)) } return nil