File tree Expand file tree Collapse file tree 1 file changed +55
-0
lines changed
Expand file tree Collapse file tree 1 file changed +55
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Issue Check
2+
3+ on :
4+ issues :
5+ types : [opened, reopened]
6+
7+ jobs :
8+ check-stargazer :
9+ runs-on : ubuntu-latest
10+ steps :
11+ - name : Check if issue creator is a stargazer
12+ uses : actions/github-script@v7
13+ with :
14+ script : |
15+ const creator = context.payload.issue.user.login;
16+ const owner = context.repo.owner;
17+ const repo = context.repo.repo;
18+
19+ async function checkAllStargazers(owner, repo, creator) {
20+ let page = 1;
21+ while (true) {
22+ const { data: stargazers } = await github.rest.activity.listStargazersForRepo({
23+ owner,
24+ repo,
25+ per_page: 100,
26+ page: page
27+ });
28+
29+ if (stargazers.length === 0) {
30+ break;
31+ }
32+
33+ if (stargazers.some(user => user.login === creator)) {
34+ return true;
35+ }
36+
37+ page++;
38+ }
39+ return false;
40+ }
41+
42+ try {
43+ const hasStarred = await checkAllStargazers(owner, repo, creator);
44+
45+ if (!hasStarred) {
46+ await github.rest.issues.addLabels({
47+ owner,
48+ repo,
49+ issue_number: context.issue.number,
50+ labels: ['invalid']
51+ });
52+ }
53+ } catch (error) {
54+ console.error('Error checking stargazer status:', error);
55+ }
You can’t perform that action at this time.
0 commit comments