Skip to content

Commit 4472d47

Browse files
authored
Update set-closed-date.yml
1 parent 7945f48 commit 4472d47

File tree

1 file changed

+46
-29
lines changed

1 file changed

+46
-29
lines changed

.github/workflows/set-closed-date.yml

+46-29
Original file line numberDiff line numberDiff line change
@@ -28,46 +28,63 @@ jobs:
2828
2929
const closedDate = new Date().toISOString().split('T')[0];
3030
31-
const items = await github.graphql.paginate(`
32-
query($projectId: ID!) {
33-
node(id: $projectId) {
34-
... on ProjectV2 {
35-
items(first: 100) {
36-
nodes {
37-
id
38-
content {
39-
... on Issue {
40-
title
41-
number
31+
const allItems = [];
32+
let hasNextPage = true;
33+
let endCursor = null;
34+
35+
while (hasNextPage) {
36+
const response = await github.graphql(`
37+
query($projectId: ID!, $after: String) {
38+
node(id: $projectId) {
39+
... on ProjectV2 {
40+
items(first: 50, after: $after) {
41+
nodes {
42+
id
43+
content {
44+
... on Issue {
45+
title
46+
number
47+
}
4248
}
43-
}
44-
fieldValues(first: 20) {
45-
nodes {
46-
... on ProjectV2ItemFieldSingleSelectValue {
47-
field {
48-
id
49+
fieldValues(first: 20) {
50+
nodes {
51+
... on ProjectV2ItemFieldSingleSelectValue {
52+
field {
53+
id
54+
name
55+
}
4956
name
57+
optionId
5058
}
51-
name
52-
optionId
53-
}
54-
... on ProjectV2ItemFieldDateValue {
55-
field {
56-
id
57-
name
59+
... on ProjectV2ItemFieldDateValue {
60+
field {
61+
id
62+
name
63+
}
64+
date
5865
}
59-
date
6066
}
6167
}
6268
}
69+
pageInfo {
70+
hasNextPage
71+
endCursor
72+
}
6373
}
6474
}
6575
}
6676
}
67-
}
68-
`, {
69-
projectId,
70-
});
77+
`, {
78+
projectId,
79+
after: endCursor,
80+
});
81+
82+
const items = response.node.items.nodes;
83+
allItems.push(...items);
84+
85+
hasNextPage = response.node.items.pageInfo.hasNextPage;
86+
endCursor = response.node.items.pageInfo.endCursor;
87+
}
7188
7289
for (const item of items.node.items.nodes) {
7390
const hasClosedDate = item.fieldValues.nodes.find(f => f.field.id === closedDateFieldId)?.date;

0 commit comments

Comments
 (0)