-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.js
More file actions
39 lines (36 loc) · 1.13 KB
/
index.js
File metadata and controls
39 lines (36 loc) · 1.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
const core = require('@actions/core');
const github = require('@actions/github');
const https = require("https")
const githubToken = core.getInput('github_token');
const repo = core.getInput('repo');
const requestOptions = {
hostname: 'api.github.com',
path: `/repos/${repo}`,
headers: {
'User-Agent': 'Mozilla/5.0',
}
};
if (githubToken) {
console.log("Use GITHUB_TOKEN to get release data.");
requestOptions.headers['Authorization'] = `token: ${githubToken}`
} else {
console.log("GITHUB_TOKEN is not available. Subsequent GitHub API call may fail due to API limit.");
}
const repoRequest = https.request(requestOptions, res => {
let responseData = '';
res.on('data', (d) => {
responseData += d;
})
res.on('end', () => {
const response = JSON.parse(responseData);
const stars = response.stargazers_count;
const license = response.license.name;
console.log(`Repo has ${stars} ⭐️ and is released under ${license} license`)
core.setOutput("stars", stars);
core.setOutput("license", license);
})
})
repoRequest.on("error", () => {
core.setFailed("Failed to fetch GitHub");
})
repoRequest.end()