Merge pull request #1103 from SkynetLabs/improve-extended-health-checks
include skapps checks
This commit is contained in:
commit
b924bc70e6
|
@ -1036,6 +1036,90 @@ function hnsEndpointDirectoryRedirect(done) {
|
||||||
skylinkVerification(done, expected, { followRedirect: false });
|
skylinkVerification(done, expected, { followRedirect: false });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function skappSkySend(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "skysend.hns",
|
||||||
|
source: "https://github.com/redsolver/skysend/",
|
||||||
|
skylink: "GADlWH3ALR2g1cDUBI6Ti8B22iD7R5dfn_8jLfq-atm5iw",
|
||||||
|
bodyHash: "35bc25301501a3b28913ca7a7a06120681365a9c",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "GADlWH3ALR2g1cDUBI6Ti8B22iD7R5dfn_8jLfq-atm5iw",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function skappNoteToSelf(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "note-to-self.hns",
|
||||||
|
source: "https://github.com/kwypchlo/note-to-self/",
|
||||||
|
skylink: "EAD_w2YcqtpqVgtRwKXPno9VmKfTcVG3E_OIL-Np_Hz_1g",
|
||||||
|
bodyHash: "e00c1b7348dd419e96bf3c188185a5fb8d04af53",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "EAD_w2YcqtpqVgtRwKXPno9VmKfTcVG3E_OIL-Np_Hz_1g",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function skappUniswap(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "uniswap skynet labs fork",
|
||||||
|
source: "https://github.com/SkynetLabs/uniswap-interface/",
|
||||||
|
skylink: "OAAy4_g9EYfuOiUZlz_irkoPgsc_seAjgGozerrT1QvE5A",
|
||||||
|
bodyHash: "db2882b7902f24d62e49905b77d536aaf7b7da75",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "OAAy4_g9EYfuOiUZlz_irkoPgsc_seAjgGozerrT1QvE5A",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function skappHackerPaste(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "hackerpaste.hns",
|
||||||
|
source: "https://github.com/harej/hackerpaste/",
|
||||||
|
skylink: "_AGZuZCyRn5kZMFHBssWYc20poXyez1XMO6hmPqAVcM1qg",
|
||||||
|
bodyHash: "12817ac933b7f64fc63ae24a652132ed11e5b622",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "_AGZuZCyRn5kZMFHBssWYc20poXyez1XMO6hmPqAVcM1qg",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function skappHowAboutSkapp(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "tirthahalli.hns",
|
||||||
|
source: "-",
|
||||||
|
skylink: "AAAsdvGalu2Fj9P5zLvZhfwoI0CpXeO_kPMSG_YU1PSIWg",
|
||||||
|
bodyHash: "734c49ddde2a49ac6ddbf1c6d90a014ff82e2f87",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "AAAsdvGalu2Fj9P5zLvZhfwoI0CpXeO_kPMSG_YU1PSIWg",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function skappSkyDeploy(done) {
|
||||||
|
skylinkVerification(done, {
|
||||||
|
name: "sky-deploy.hns",
|
||||||
|
source: "-",
|
||||||
|
skylink: "CABR1ic_lIPaN9JYLG6AiudkW5GShRd-Cr6Wkjur7z29Rw",
|
||||||
|
bodyHash: "b2b0498a8a7f6fcfe76c29ae1a1176b4e64cb5ab",
|
||||||
|
headers: {
|
||||||
|
"skynet-skylink": "CABR1ic_lIPaN9JYLG6AiudkW5GShRd-Cr6Wkjur7z29Rw",
|
||||||
|
"content-disposition": 'inline; filename="index.html"',
|
||||||
|
"content-type": "text/html",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function parseHeaderString(header) {
|
function parseHeaderString(header) {
|
||||||
try {
|
try {
|
||||||
return JSON.parse(header);
|
return JSON.parse(header);
|
||||||
|
@ -1061,7 +1145,7 @@ async function skylinkVerification(done, expected, { followRedirect = true, meth
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if the response body is valid by checking against the known hash
|
// Check if the response body is valid by checking against the known hash
|
||||||
if (expected.bodyHash) {
|
if ("bodyHash" in expected) {
|
||||||
const currentBodyHash = hasha(response.rawBody, { algorithm: "sha1" });
|
const currentBodyHash = hasha(response.rawBody, { algorithm: "sha1" });
|
||||||
if (currentBodyHash !== expected.bodyHash) {
|
if (currentBodyHash !== expected.bodyHash) {
|
||||||
entry.up = false;
|
entry.up = false;
|
||||||
|
@ -1153,4 +1237,10 @@ module.exports = [
|
||||||
uniswapHNSResolverCheck,
|
uniswapHNSResolverCheck,
|
||||||
uniswapHNSResolverRedirectCheck,
|
uniswapHNSResolverRedirectCheck,
|
||||||
hnsEndpointDirectoryRedirect,
|
hnsEndpointDirectoryRedirect,
|
||||||
|
skappSkySend,
|
||||||
|
skappNoteToSelf,
|
||||||
|
skappUniswap,
|
||||||
|
skappHackerPaste,
|
||||||
|
skappHowAboutSkapp,
|
||||||
|
skappSkyDeploy,
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
const util = require("util");
|
||||||
const { getYesterdayISOString } = require("./utils");
|
const { getYesterdayISOString } = require("./utils");
|
||||||
const createMiddleware = require("./checks/middleware");
|
const createMiddleware = require("./checks/middleware");
|
||||||
|
|
||||||
|
@ -43,7 +44,12 @@ require("yargs/yargs")(process.argv.slice(2)).command(
|
||||||
|
|
||||||
// exit with code 1 if any of the checks report failure
|
// exit with code 1 if any of the checks report failure
|
||||||
if (entry.checks.some(({ up }) => !up)) {
|
if (entry.checks.some(({ up }) => !up)) {
|
||||||
console.log(entry.checks.filter(({ up }) => !up));
|
console.log(
|
||||||
|
util.inspect(
|
||||||
|
entry.checks.filter(({ up }) => !up),
|
||||||
|
{ colors: true, depth: 7 } // increase depth to ensure errors are printed
|
||||||
|
)
|
||||||
|
);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -173,6 +173,9 @@ async def check_health():
|
||||||
critical_checks_failed += 1
|
critical_checks_failed += 1
|
||||||
bad = True
|
bad = True
|
||||||
if bad:
|
if bad:
|
||||||
|
critical["checks"] = [
|
||||||
|
check for check in critical["checks"] if check["up"] == False
|
||||||
|
]
|
||||||
failed_records.append(critical)
|
failed_records.append(critical)
|
||||||
|
|
||||||
for extended in json_extended:
|
for extended in json_extended:
|
||||||
|
@ -186,6 +189,9 @@ async def check_health():
|
||||||
extended_checks_failed += 1
|
extended_checks_failed += 1
|
||||||
bad = True
|
bad = True
|
||||||
if bad:
|
if bad:
|
||||||
|
extended["checks"] = [
|
||||||
|
check for check in extended["checks"] if check["up"] == False
|
||||||
|
]
|
||||||
failed_records.append(extended)
|
failed_records.append(extended)
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
Reference in New Issue