ci(response): use pagination for timeline events

GitHub paginates responses with many results, which needs to be taken
into account as the number of events in an issue can be large.
This commit is contained in:
dundargoc 2023-05-01 08:22:28 +02:00
parent 416f03010e
commit b5a8b6b16d

View File

@ -19,13 +19,18 @@ module.exports = async ({ github, context }) => {
const numbers = issues.data.map((e) => e.number);
for (const number of numbers) {
const timeline = await github.rest.issues.listEventsForTimeline({
owner: owner,
repo: repo,
issue_number: number,
});
const data = timeline.data.filter(labeledEvent);
const latest_response_label = data[data.length - 1];
const events = await github.paginate(
github.rest.issues.listEventsForTimeline,
{
owner: owner,
repo: repo,
issue_number: number,
},
(response) => response.data.filter(labeledEvent)
);
const latest_response_label = events[events.length - 1];
const created_at = new Date(latest_response_label.created_at);
const now = new Date();
const diff = now - created_at;