fix: Paginate ListRepositoryWorkflowRuns (#295)

When we used `QueuedAndInProgressWorkflowRuns`-based autoscaling, it only fetched and considered only the first 30 workflow runs at the reconcilation time. This may have resulted in unreliable scaling behaviour, like scale-in/out not happening when it was expected.
This commit is contained in:
Yusuke Kuoka
2021-02-09 10:13:53 +09:00
committed by GitHub
parent ab1c39de57
commit 9301409aec
2 changed files with 30 additions and 2 deletions

View File

@@ -138,12 +138,12 @@ func (r *HorizontalRunnerAutoscalerReconciler) calculateReplicasByQueuedAndInPro
for _, repo := range repos {
user, repoName := repo[0], repo[1]
list, _, err := r.GitHubClient.Actions.ListRepositoryWorkflowRuns(context.TODO(), user, repoName, nil)
workflowRuns, err := r.GitHubClient.ListRepositoryWorkflowRuns(context.TODO(), user, repoName)
if err != nil {
return nil, err
}
for _, run := range list.WorkflowRuns {
for _, run := range workflowRuns {
total++
// In May 2020, there are only 3 statuses.