Skip to content

Commit 37d4090

Browse files
committed
feat: log gitlab rate limits only when available
Signed-off-by: Robin Lieb <[email protected]>
1 parent 9dc4d3f commit 37d4090

File tree

3 files changed

+20
-14
lines changed

3 files changed

+20
-14
lines changed

Diff for: internal/scms/gitlab/commit_status.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func (cs *CommitStatus) Set(ctx context.Context, commitStatus *v1alpha1.CommitSt
6060
return nil, fmt.Errorf("failed to create status: %w", err)
6161
}
6262

63-
logGitLabRatelimits(
63+
logGitLabRateLimitsIfAvailable(
6464
logger,
6565
repo.Spec.ScmProviderRef.Name,
6666
resp,

Diff for: internal/scms/gitlab/pullrequest.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ func (pr *PullRequest) Create(ctx context.Context, title, head, base, desc strin
5959
return "", fmt.Errorf("failed to create pull request: %w", err)
6060
}
6161

62-
logGitLabRatelimits(
62+
logGitLabRateLimitsIfAvailable(
6363
logger,
6464
prObj.Spec.RepositoryReference.Name,
6565
resp,
@@ -101,7 +101,7 @@ func (pr *PullRequest) Update(ctx context.Context, title, description string, pr
101101
return fmt.Errorf("failed to update merge request: %w", err)
102102
}
103103

104-
logGitLabRatelimits(
104+
logGitLabRateLimitsIfAvailable(
105105
logger,
106106
prObj.Spec.RepositoryReference.Name,
107107
resp,
@@ -142,7 +142,7 @@ func (pr *PullRequest) Close(ctx context.Context, prObj *v1alpha1.PullRequest) e
142142
return fmt.Errorf("failed to close merge request: %w", err)
143143
}
144144

145-
logGitLabRatelimits(
145+
logGitLabRateLimitsIfAvailable(
146146
logger,
147147
prObj.Spec.RepositoryReference.Name,
148148
resp,
@@ -186,7 +186,7 @@ func (pr *PullRequest) Merge(ctx context.Context, commitMessage string, prObj *v
186186
return fmt.Errorf("failed to merge request: %w", err)
187187
}
188188

189-
logGitLabRatelimits(
189+
logGitLabRateLimitsIfAvailable(
190190
logger,
191191
prObj.Spec.RepositoryReference.Name,
192192
resp,
@@ -212,7 +212,7 @@ func (pr *PullRequest) FindOpen(ctx context.Context, prObj *v1alpha1.PullRequest
212212
return false, fmt.Errorf("failed to list pull requests: %w", err)
213213
}
214214

215-
logGitLabRatelimits(
215+
logGitLabRateLimitsIfAvailable(
216216
logger,
217217
prObj.Spec.RepositoryReference.Name,
218218
resp,

Diff for: internal/scms/gitlab/utils.go

+14-8
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,24 @@ import (
66
gitlab "gitlab.com/gitlab-org/api/client-go"
77
)
88

9-
func logGitLabRatelimits(
9+
func logGitLabRateLimitsIfAvailable(
1010
logger logr.Logger,
1111
scmProvider string,
1212
resp *gitlab.Response,
1313
) {
14-
logger.Info("GitLab rate limits",
15-
"scmProvider", scmProvider,
16-
"limit", resp.Header.Get("Ratelimit-Limit"),
17-
"remaining", resp.Header.Get("Ratelimit-Remaining"),
18-
"reset", resp.Header.Get("Ratelimit-Reset"),
19-
"url", resp.Request.URL,
20-
)
14+
limit := resp.Header.Get("Ratelimit-Limit")
15+
remaining := resp.Header.Get("Ratelimit-Remaining")
16+
reset := resp.Header.Get("Ratelimit-Reset")
17+
18+
if limit != "" || remaining != "" || reset != "" {
19+
logger.Info("GitLab rate limits",
20+
"scmProvider", scmProvider,
21+
"limit", limit,
22+
"remaining", remaining,
23+
"reset", reset,
24+
"url", resp.Request.URL.String(),
25+
)
26+
}
2127
}
2228

2329
func mapMergeRequestState(gl string) v1alpha1.PullRequestState {

0 commit comments

Comments
 (0)