aboutsummaryrefslogtreecommitdiff
path: root/bin/checkPeople.js
diff options
context:
space:
mode:
authorBraxton Hall2022-10-24 19:25:34 +0000
committerGitHub2022-10-24 19:25:34 +0000
commita139a04ba0a5de1c36044e3dae1c6833193d2bea (patch)
treecc9a8ca446284f065fc7d220190398fd8ff40ce1 /bin/checkPeople.js
parent13fc2738b971774a3af451e63fcb34e8010fadc5 (diff)
parent8af5f6d9351554b22e75650487d1afe5745df39b (diff)
Merge pull request #23 from braxtonhall/nico
Nico
Diffstat (limited to 'bin/checkPeople.js')
-rw-r--r--bin/checkPeople.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/bin/checkPeople.js b/bin/checkPeople.js
new file mode 100644
index 0000000..3c564a4
--- /dev/null
+++ b/bin/checkPeople.js
@@ -0,0 +1,36 @@
+const fs = require("fs");
+
+const PEOPLE_PATH = "./people.json";
+
+const [actor] = process.argv.slice(2);
+
+console.log(`Triggered by ${actor}`);
+
+if (!fs.existsSync(PEOPLE_PATH)) {
+ throw "No people file found";
+}
+
+let people;
+try {
+ people = JSON.parse(fs.readFileSync(PEOPLE_PATH));
+} catch (err) {
+ throw "Could not read people.json as JSON";
+}
+
+const person = people.find(person => person.github === actor);
+if (!person) {
+ throw `${actor} isn't in people.json!`;
+}
+
+if (!(person.entries && person.entries.length > 0)) {
+ throw `${actor} is missing entries!`;
+}
+
+for (const entry of person.entries) {
+ const {link} = entry;
+ if (!(link.startsWith("http") || fs.existsSync(link))) {
+ throw `${link} not found!`;
+ }
+}
+
+console.log("Checked!");