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-07 16:46:24 +02:00
committed by GitHub
parent 416f03010e
commit 1cbfed03c2

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;