You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
const closeComment = `Closing this pull request because it has had no updates for more than ${DAYS_INACTIVE} days. If you plan to continue working on it, feel free to reopen or open a new PR.`
120
188
121
189
if (dryRun) {
122
-
core.info(`[dry-run] Would close PR #${issue_number} from ${pr.author.login}: ${pr.title}`)
190
+
core.info(`[dry-run] Would close PR #${issue_number} from ${pr.author?.login || 'unknown'}: ${pr.title}`)
123
191
continue
124
192
}
125
193
126
-
await github.rest.issues.createComment({
127
-
owner,
128
-
repo,
129
-
issue_number,
130
-
body: closeComment,
131
-
})
132
-
133
-
await github.rest.pulls.update({
134
-
owner,
135
-
repo,
136
-
pull_number: issue_number,
137
-
state: "closed",
138
-
})
139
-
140
-
core.info(`Closed PR #${issue_number} from ${pr.author.login}: ${pr.title}`)
194
+
try {
195
+
// Add comment
196
+
await withRetry(
197
+
() => github.rest.issues.createComment({
198
+
owner,
199
+
repo,
200
+
issue_number,
201
+
body: closeComment,
202
+
}),
203
+
`Comment on PR #${issue_number}`
204
+
)
205
+
206
+
// Close PR
207
+
await withRetry(
208
+
() => github.rest.pulls.update({
209
+
owner,
210
+
repo,
211
+
pull_number: issue_number,
212
+
state: "closed",
213
+
}),
214
+
`Close PR #${issue_number}`
215
+
)
216
+
217
+
closedCount++
218
+
core.info(`Closed PR #${issue_number} from ${pr.author?.login || 'unknown'}: ${pr.title}`)
219
+
220
+
// Delay before processing next PR
221
+
await sleep(requestDelayMs)
222
+
} catch (error) {
223
+
skippedCount++
224
+
core.error(`Failed to close PR #${issue_number}: ${error.message}`)
0 commit comments