diff --git a/controllers/autoscaling.go b/controllers/autoscaling.go index da351692..ef82aab0 100644 --- a/controllers/autoscaling.go +++ b/controllers/autoscaling.go @@ -4,6 +4,7 @@ import ( "context" "errors" "fmt" + "math" "strconv" "strings" @@ -218,7 +219,7 @@ func (r *HorizontalRunnerAutoscalerReconciler) calculateReplicasByPercentageRunn var desiredReplicas int fractionBusy := float64(numRunnersBusy) / float64(numRunners) if fractionBusy >= scaleUpThreshold { - scaleUpReplicas := int(float64(numRunners)*scaleUpFactor + 0.5) + scaleUpReplicas := int(math.Ceil(float64(numRunners) * scaleUpFactor)) if scaleUpReplicas > maxReplicas { desiredReplicas = maxReplicas } else {