add response content to health check failures (#437)

This commit is contained in:
Karol Wypchło 2020-09-30 16:20:55 +02:00 committed by GitHub
parent 1ebdf75e87
commit e58752571e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 129 additions and 135 deletions

View File

@ -1,6 +1,6 @@
const superagent = require("superagent"); const superagent = require("superagent");
const { StatusCodes } = require("http-status-codes"); const { StatusCodes } = require("http-status-codes");
const { calculateElapsedTime } = require("../utils"); const { calculateElapsedTime, getResponseContent } = require("../utils");
// uploadCheck returns the result of uploading a sample file // uploadCheck returns the result of uploading a sample file
async function uploadCheck(done) { async function uploadCheck(done) {
@ -16,6 +16,7 @@ async function uploadCheck(done) {
name: "upload_file", name: "upload_file",
up: statusCode === StatusCodes.OK, up: statusCode === StatusCodes.OK,
statusCode, statusCode,
errorResponseContent: getResponseContent(error?.response),
time: calculateElapsedTime(time), time: calculateElapsedTime(time),
}); });
}); });
@ -25,7 +26,7 @@ async function uploadCheck(done) {
async function downloadCheck(done) { async function downloadCheck(done) {
const time = process.hrtime(); const time = process.hrtime();
const skylink = "AACogzrAimYPG42tDOKhS3lXZD8YvlF8Q8R17afe95iV2Q"; const skylink = "AACogzrAimYPG42tDOKhS3lXZD8YvlF8Q8R17afe95iV2Q";
let statusCode; let statusCode, errorResponseContent;
try { try {
const response = await superagent.get(`http://${process.env.PORTAL_URL}/${skylink}?nocache=true`); const response = await superagent.get(`http://${process.env.PORTAL_URL}/${skylink}?nocache=true`);
@ -33,12 +34,14 @@ async function downloadCheck(done) {
statusCode = response.statusCode; statusCode = response.statusCode;
} catch (error) { } catch (error) {
statusCode = error.statusCode || error.status; statusCode = error.statusCode || error.status;
errorResponseContent = getResponseContent(error.response);
} }
done({ done({
name: "download_file", name: "download_file",
up: statusCode === StatusCodes.OK, up: statusCode === StatusCodes.OK,
statusCode, statusCode,
errorResponseContent,
time: calculateElapsedTime(time), time: calculateElapsedTime(time),
}); });
} }

View File

@ -2,7 +2,7 @@ const superagent = require("superagent");
const hash = require("object-hash"); const hash = require("object-hash");
const { detailedDiff } = require("deep-object-diff"); const { detailedDiff } = require("deep-object-diff");
const { isEqual } = require("lodash"); const { isEqual } = require("lodash");
const { calculateElapsedTime } = require("../utils"); const { calculateElapsedTime, getResponseContent } = require("../utils");
// audioExampleCheck returns the result of trying to download the skylink // audioExampleCheck returns the result of trying to download the skylink
// for the Example audio file on siasky.net // for the Example audio file on siasky.net
@ -918,11 +918,6 @@ function skylinkVerification(done, { name, skylink, bodyHash, metadata }) {
if (!isEqual(currentMetadata, metadata)) { if (!isEqual(currentMetadata, metadata)) {
entry.up = false; entry.up = false;
console.log(metadata);
console.log(currentMetadata);
console.log(metadataHeader);
console.log(response.header);
info.metadata = detailedDiff(metadata, currentMetadata); info.metadata = detailedDiff(metadata, currentMetadata);
} }
@ -931,10 +926,13 @@ function skylinkVerification(done, { name, skylink, bodyHash, metadata }) {
done(entry); // Return the entry information done(entry); // Return the entry information
}, },
(error) => { (error) => {
const statusCode = error.statusCode || error.status; done({
const entry = { name, up: false, statusCode, time: calculateElapsedTime(time) }; name,
up: false,
done(entry); // Return the entry information statusCode: error.statusCode || error.status,
errorResponseContent: getResponseContent(error.response),
time: calculateElapsedTime(time),
});
} }
); );
} }

View File

@ -18,4 +18,19 @@ function getYesterdayISOString() {
return date.toISOString(); return date.toISOString();
} }
module.exports = { calculateElapsedTime, getYesterdayISOString }; /**
* Get response from response object if available
*/
function getResponseContent(response) {
try {
return JSON.parse(response?.text);
} catch {
return response?.text;
}
}
module.exports = {
calculateElapsedTime,
getYesterdayISOString,
getResponseContent,
};

View File

@ -173,6 +173,7 @@ async def check_health():
message += "{}/{} CRITICAL checks failed over the last {} hours! ".format( message += "{}/{} CRITICAL checks failed over the last {} hours! ".format(
critical_checks_failed, critical_checks_total, CHECK_HOURS critical_checks_failed, critical_checks_total, CHECK_HOURS
) )
force_notify = True
else: else:
message += "All {} critical checks passed. ".format(critical_checks_total) message += "All {} critical checks passed. ".format(critical_checks_total)
@ -180,6 +181,7 @@ async def check_health():
message += "{}/{} verbose checks failed over the last {} hours! ".format( message += "{}/{} verbose checks failed over the last {} hours! ".format(
verbose_checks_failed, verbose_checks_total, CHECK_HOURS verbose_checks_failed, verbose_checks_total, CHECK_HOURS
) )
force_notify = True
else: else:
message += "All {} verbose checks passed. ".format(verbose_checks_total) message += "All {} verbose checks passed. ".format(verbose_checks_total)

220
yarn.lock
View File

@ -1163,17 +1163,17 @@
strip-json-comments "^3.1.1" strip-json-comments "^3.1.1"
"@graphql-tools/schema@^6.0.14": "@graphql-tools/schema@^6.0.14":
version "6.2.3" version "6.2.4"
resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-6.2.3.tgz#7ffc8e5f49d9a81f446fb8db87a6f5d07b1fba8e" resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-6.2.4.tgz#cc4e9f5cab0f4ec48500e666719d99fc5042481d"
integrity sha512-CV5vDfQhXidssLK5hjT55FfwRAvBoGW53lVBl0rbXrbsSX7H9iVHdUf4UaDIlMc6WcnnzOrRiue/khHz3rzDEg== integrity sha512-rh+14lSY1q8IPbEv2J9x8UBFJ5NrDX9W5asXEUlPp+7vraLp/Tiox4GXdgyA92JhwpYco3nTf5Bo2JDMt1KnAQ==
dependencies: dependencies:
"@graphql-tools/utils" "6.2.3" "@graphql-tools/utils" "^6.2.4"
tslib "~2.0.1" tslib "~2.0.1"
"@graphql-tools/utils@6.2.3", "@graphql-tools/utils@^6.0.14": "@graphql-tools/utils@^6.0.14", "@graphql-tools/utils@^6.2.4":
version "6.2.3" version "6.2.4"
resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-6.2.3.tgz#235636b47a62f12f3dddbdd30b2986fc03f3a5fa" resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-6.2.4.tgz#38a2314d2e5e229ad4f78cca44e1199e18d55856"
integrity sha512-eOhZy4y23r6AddokBqvFpQybtHvhTyZCc3VFWn8eIqF92vre90UKHbCX6Cf6VBo6i7l0ZwChPPbUzEiHOk+HJQ== integrity sha512-ybgZ9EIJE3JMOtTrTd2VcIpTXtDrn2q6eiYkeYMKRVh3K41+LZa6YnR2zKERTXqTWqhobROwLt4BZbw2O3Aeeg==
dependencies: dependencies:
"@ardatan/aggregate-error" "0.0.6" "@ardatan/aggregate-error" "0.0.6"
camel-case "4.1.1" camel-case "4.1.1"
@ -2041,9 +2041,9 @@
integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==
"@types/reach__router@^1.3.3": "@types/reach__router@^1.3.3":
version "1.3.5" version "1.3.6"
resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.5.tgz#14e1e981cccd3a5e50dc9e969a72de0b9d472f6d" resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.6.tgz#413417ce74caab331c70ce6a03a4c825188e4709"
integrity sha512-h0NbqXN/tJuBY/xggZSej1SKQEstbHO7J/omt1tYoFGmj3YXOodZKbbqD4mNDh7zvEGYd7YFrac1LTtAr3xsYQ== integrity sha512-RHYataCUPQnt+GHoASyRLq6wmZ0n8jWlBW8Lxcwd30NN6vQfbmTeoSDfkgxO0S1lEzArp8OFDsq5KIs7FygjtA==
dependencies: dependencies:
"@types/history" "*" "@types/history" "*"
"@types/react" "*" "@types/react" "*"
@ -2072,9 +2072,9 @@
"@types/node" "*" "@types/node" "*"
"@types/sinonjs__fake-timers@^6.0.1": "@types/sinonjs__fake-timers@^6.0.1":
version "6.0.1" version "6.0.2"
resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.1.tgz#681df970358c82836b42f989188d133e218c458e" resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.2.tgz#3a84cf5ec3249439015e14049bd3161419bf9eae"
integrity sha512-yYezQwGWty8ziyYLdZjwxyMb0CZR49h8JALHGrxjQHWlqGgc8kLdHEgWrgL0uZ29DMvEVBDnHU2Wg36zKSIUtA== integrity sha512-dIPoZ3g5gcx9zZEszaxLSVTvMReD3xxyyDnQUjA6IYDG9Ba2AV0otMPs+77sG9ojB4Qr2N2Vk5RnKeuA0X/0bg==
"@types/sizzle@^2.3.2": "@types/sizzle@^2.3.2":
version "2.3.2" version "2.3.2"
@ -2157,9 +2157,9 @@
tsutils "^3.17.1" tsutils "^3.17.1"
"@urql/core@^1.12.3": "@urql/core@^1.12.3":
version "1.13.0" version "1.13.1"
resolved "https://registry.yarnpkg.com/@urql/core/-/core-1.13.0.tgz#811154b5951b4282dd698a8c9dff4ff3825ca215" resolved "https://registry.yarnpkg.com/@urql/core/-/core-1.13.1.tgz#7247c27dccd7570010de91730d1f16fd15892829"
integrity sha512-g7Kn2a0TDQotOqvGR7bRC+JqviA4TYtiDZH5M9Roszx7LiqZBkViSr5zmdwlNZjR4kSDn+kSXlCV+Ht0Uqls0Q== integrity sha512-Zl4UwvcE9JbWKzrtxnlmfF+rkX50GzK5dpMlB6FnUYF0sLmuGMxp67lnhTQsfTNJ+41bkj4lk0PMWEnG7KUsTw==
dependencies: dependencies:
wonka "^4.0.14" wonka "^4.0.14"
@ -2937,12 +2937,7 @@ babel-plugin-remove-export-keywords@^1.6.5:
resolved "https://registry.yarnpkg.com/babel-plugin-remove-export-keywords/-/babel-plugin-remove-export-keywords-1.6.18.tgz#cabdedb571535efcc86465cf023d7620b71b95af" resolved "https://registry.yarnpkg.com/babel-plugin-remove-export-keywords/-/babel-plugin-remove-export-keywords-1.6.18.tgz#cabdedb571535efcc86465cf023d7620b71b95af"
integrity sha512-uX5ni5zoCqBzOMNDlgCaf4apVyqBlzDbOexG7qOhuoXUKHU5v1G0gmGaV5Wvs4cAOtyL1294h3rBEWbj9sMeCg== integrity sha512-uX5ni5zoCqBzOMNDlgCaf4apVyqBlzDbOexG7qOhuoXUKHU5v1G0gmGaV5Wvs4cAOtyL1294h3rBEWbj9sMeCg==
babel-plugin-remove-graphql-queries@^2.9.19: babel-plugin-remove-graphql-queries@^2.9.19, babel-plugin-remove-graphql-queries@^2.9.20:
version "2.9.19"
resolved "https://registry.yarnpkg.com/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-2.9.19.tgz#e53f7062be69d96d60c3ed261ffc9260fa777b36"
integrity sha512-s8Ar5NtJD5JXsRntMFKBMjIauWaGCOTTyZO4XdaktRA7JW1gzzN0p1uyiW9QaNenVbzV+RR4ceObCwlfH8e/xA==
babel-plugin-remove-graphql-queries@^2.9.20:
version "2.9.20" version "2.9.20"
resolved "https://registry.yarnpkg.com/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-2.9.20.tgz#69ad42efdb3b4340992080afba101d2d1a2843b2" resolved "https://registry.yarnpkg.com/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-2.9.20.tgz#69ad42efdb3b4340992080afba101d2d1a2843b2"
integrity sha512-FB4tIvdXaGFBFhHAzlqB0NxVA5BcjzVYbY8ut7ProStW3cjv208ADMlfzmPdSP/I1Z0wl2MrXgHNCrL1TQ/Mew== integrity sha512-FB4tIvdXaGFBFhHAzlqB0NxVA5BcjzVYbY8ut7ProStW3cjv208ADMlfzmPdSP/I1Z0wl2MrXgHNCrL1TQ/Mew==
@ -3000,6 +2995,11 @@ balanced-match@^1.0.0:
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
base64-arraybuffer@0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812"
integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=
base64-arraybuffer@0.1.5: base64-arraybuffer@0.1.5:
version "0.1.5" version "0.1.5"
resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8"
@ -3367,12 +3367,12 @@ browserify-zlib@^0.2.0:
pako "~1.0.5" pako "~1.0.5"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.8.5: browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.8.5:
version "4.14.4" version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.4.tgz#66a18131439f9e16c3da7f352518dfa12f60b0e3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-7FOuawafVdEwa5Jv4nzeik/PepAjVte6HmVGHsjt2bC237jeL9QlcTBDF3PnHEvcC6uHwLGYPwZHNZMB7wWAnw== integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies: dependencies:
caniuse-lite "^1.0.30001135" caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.570" electron-to-chromium "^1.3.571"
escalade "^3.1.0" escalade "^3.1.0"
node-releases "^1.1.61" node-releases "^1.1.61"
@ -3696,9 +3696,9 @@ caniuse-api@^3.0.0:
lodash.uniq "^4.5.0" lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135: caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001135" version "1.0.30001140"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001135.tgz#995b1eb94404a3c9a0d7600c113c9bb27f2cd8aa" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001140.tgz#30dae27599f6ede2603a0962c82e468bca894232"
integrity sha512-ziNcheTGTHlu9g34EVoHQdIu5g4foc8EsxMGC7Xkokmvw0dqNtX8BS8RgCgFBaAiSp2IdjvBxNdh0ssib28eVQ== integrity sha512-xFtvBtfGrpjTOxTpjP5F2LmN04/ZGfYV8EQzUIC/RmKpdrmzJrjqlJ4ho7sGuAMPko2/Jl08h7x9uObCfBFaAA==
case@^1.6.2: case@^1.6.2:
version "1.6.3" version "1.6.3"
@ -5381,10 +5381,10 @@ ee-first@1.1.1:
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
electron-to-chromium@^1.3.570: electron-to-chromium@^1.3.571:
version "1.3.571" version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.571.tgz#e57977f1569f8326ae2a7905e26f3943536ba28f" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-UYEQ2Gtc50kqmyOmOVtj6Oqi38lm5yRJY3pLuWt6UIot0No1L09uu6Ja6/1XKwmz/p0eJFZTUZi+khd1PV1hHA== integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
elegant-spinner@^1.0.1: elegant-spinner@^1.0.1:
version "1.0.1" version "1.0.1"
@ -5437,30 +5437,30 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1:
once "^1.4.0" once "^1.4.0"
engine.io-client@~3.4.0: engine.io-client@~3.4.0:
version "3.4.3" version "3.4.4"
resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.4.3.tgz#192d09865403e3097e3575ebfeb3861c4d01a66c" resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.4.4.tgz#77d8003f502b0782dd792b073a4d2cf7ca5ab967"
integrity sha512-0NGY+9hioejTEJCaSJZfWZLk4FPI9dN+1H1C4+wj2iuFba47UgZbJzfWs4aNFajnX/qAaYKbe2lLTfEEWzCmcw== integrity sha512-iU4CRr38Fecj8HoZEnFtm2EiKGbYZcPn3cHxqNGl/tmdWRf60KhK+9vE0JeSjgnlS/0oynEfLgKbT9ALpim0sQ==
dependencies: dependencies:
component-emitter "~1.3.0" component-emitter "~1.3.0"
component-inherit "0.0.3" component-inherit "0.0.3"
debug "~4.1.0" debug "~3.1.0"
engine.io-parser "~2.2.0" engine.io-parser "~2.2.0"
has-cors "1.1.0" has-cors "1.1.0"
indexof "0.0.1" indexof "0.0.1"
parseqs "0.0.5" parseqs "0.0.6"
parseuri "0.0.5" parseuri "0.0.6"
ws "~6.1.0" ws "~6.1.0"
xmlhttprequest-ssl "~1.5.4" xmlhttprequest-ssl "~1.5.4"
yeast "0.1.2" yeast "0.1.2"
engine.io-parser@~2.2.0: engine.io-parser@~2.2.0:
version "2.2.0" version "2.2.1"
resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.0.tgz#312c4894f57d52a02b420868da7b5c1c84af80ed" resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.1.tgz#57ce5611d9370ee94f99641b589f94c97e4f5da7"
integrity sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w== integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==
dependencies: dependencies:
after "0.8.2" after "0.8.2"
arraybuffer.slice "~0.0.7" arraybuffer.slice "~0.0.7"
base64-arraybuffer "0.1.5" base64-arraybuffer "0.1.4"
blob "0.0.5" blob "0.0.5"
has-binary2 "~1.0.2" has-binary2 "~1.0.2"
@ -5621,7 +5621,7 @@ eslint-config-react-app@^5.2.1:
dependencies: dependencies:
confusing-browser-globals "^1.0.9" confusing-browser-globals "^1.0.9"
eslint-import-resolver-node@^0.3.3: eslint-import-resolver-node@^0.3.4:
version "0.3.4" version "0.3.4"
resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717"
integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==
@ -5671,16 +5671,16 @@ eslint-plugin-graphql@^3.1.1:
lodash "^4.11.1" lodash "^4.11.1"
eslint-plugin-import@^2.22.0: eslint-plugin-import@^2.22.0:
version "2.22.0" version "2.22.1"
resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz#92f7736fe1fde3e2de77623c838dd992ff5ffb7e" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz#0896c7e6a0cf44109a2d97b95903c2bb689d7702"
integrity sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg== integrity sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==
dependencies: dependencies:
array-includes "^3.1.1" array-includes "^3.1.1"
array.prototype.flat "^1.2.3" array.prototype.flat "^1.2.3"
contains-path "^0.1.0" contains-path "^0.1.0"
debug "^2.6.9" debug "^2.6.9"
doctrine "1.5.0" doctrine "1.5.0"
eslint-import-resolver-node "^0.3.3" eslint-import-resolver-node "^0.3.4"
eslint-module-utils "^2.6.0" eslint-module-utils "^2.6.0"
has "^1.0.3" has "^1.0.3"
minimatch "^3.0.4" minimatch "^3.0.4"
@ -5729,9 +5729,9 @@ eslint-plugin-react@7.20.6:
string.prototype.matchall "^4.0.2" string.prototype.matchall "^4.0.2"
eslint-plugin-react@^7.20.6: eslint-plugin-react@^7.20.6:
version "7.21.1" version "7.21.2"
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.1.tgz#3d9fe506eab78756f67c671bb2a9aa9c20990a39" resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.2.tgz#3bd5d2c4c36d5a0428d0d6dda301ac9a84d681b2"
integrity sha512-TGtWzWrFjZtrD1giMz0O6a9ul++YR9vZSzIL/a7qlb5I/ra/O5RkMGMJK+KKYnJrzz884kyAkEyWiU4Hg2HTrg== integrity sha512-j3XKvrK3rpBzveKFbgAeGsWb9uz6iUOrR0jixRfjwdFeGSRsXvVTFtHDQYCjsd1/6Z/xvb8Vy3LiI5Reo7fDrg==
dependencies: dependencies:
array-includes "^3.1.1" array-includes "^3.1.1"
array.prototype.flatmap "^1.2.3" array.prototype.flatmap "^1.2.3"
@ -6501,9 +6501,9 @@ flatted@^2.0.0:
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
flatted@^3.0.0: flatted@^3.0.0:
version "3.0.5" version "3.1.0"
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.0.5.tgz#2db8faa9fc50b48b7c4ba3d6399846538fdab9f6" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067"
integrity sha512-bDEpEsHk2pHn4R+slxblk0N0gK5lQsK2aRwW6LJyIpX3o9qhoVkufDjDvU3fpSJbR7UgOl+icRoR9agYyjzMTw== integrity sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==
flush-write-stream@^1.0.0: flush-write-stream@^1.0.0:
version "1.1.1" version "1.1.1"
@ -6574,9 +6574,9 @@ formidable@^1.2.2:
integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==
formik@^2.0.8: formik@^2.0.8:
version "2.1.5" version "2.1.6"
resolved "https://registry.yarnpkg.com/formik/-/formik-2.1.5.tgz#de5bbbe35543fa6d049fe96b8ee329d6cd6892b8" resolved "https://registry.yarnpkg.com/formik/-/formik-2.1.6.tgz#f723bfccb2c7abec886aa6a4930b360d20f1a0b3"
integrity sha512-bWpo3PiqVDYslvrRjTq0Isrm0mFXHiO33D8MS6t6dWcqSFGeYF52nlpCM2xwOJ6tRVRznDkL+zz/iHPL4LDuvQ== integrity sha512-m9DcxlZw/58p4xuhH3dzUzQWaC4dig0RKX7yNQOJt4VRhXn7p+YRrs3o17r3YwzvOLua3zC53VMbfupLsDwO5w==
dependencies: dependencies:
deepmerge "^2.1.1" deepmerge "^2.1.1"
hoist-non-react-statics "^3.3.0" hoist-non-react-statics "^3.3.0"
@ -6741,20 +6741,7 @@ gatsby-cli@^2.12.100:
yargs "^15.4.1" yargs "^15.4.1"
yurnalist "^1.1.2" yurnalist "^1.1.2"
gatsby-core-utils@^1.3.20: gatsby-core-utils@^1.3.20, gatsby-core-utils@^1.3.21:
version "1.3.20"
resolved "https://registry.yarnpkg.com/gatsby-core-utils/-/gatsby-core-utils-1.3.20.tgz#3fee11634ec457f01d1327da885a9f8fe50c6823"
integrity sha512-tTry2Iz7QKfMEkYiqXOEbMhR96hpttkKeUCQAj7syC9tQwFGd1nkGlpbD4n8lBa22cXKLlL9J2edhDo1xwnfGQ==
dependencies:
ci-info "2.0.0"
configstore "^5.0.1"
fs-extra "^8.1.0"
node-object-hash "^2.0.0"
proper-lockfile "^4.1.1"
tmp "^0.2.1"
xdg-basedir "^4.0.0"
gatsby-core-utils@^1.3.21:
version "1.3.21" version "1.3.21"
resolved "https://registry.yarnpkg.com/gatsby-core-utils/-/gatsby-core-utils-1.3.21.tgz#fa988d04683527b1713c41df10c081712994781c" resolved "https://registry.yarnpkg.com/gatsby-core-utils/-/gatsby-core-utils-1.3.21.tgz#fa988d04683527b1713c41df10c081712994781c"
integrity sha512-oaHdrfnip0u1pMVkO5O+R6YxJ6XBi662YCAPVj4G6DCQG9ngJOKNdaHXU1G9Mjalq6Kb/rNWNRMjOU5u78BdKQ== integrity sha512-oaHdrfnip0u1pMVkO5O+R6YxJ6XBi662YCAPVj4G6DCQG9ngJOKNdaHXU1G9Mjalq6Kb/rNWNRMjOU5u78BdKQ==
@ -6768,9 +6755,9 @@ gatsby-core-utils@^1.3.21:
xdg-basedir "^4.0.0" xdg-basedir "^4.0.0"
gatsby-design-tokens@^2.0.2: gatsby-design-tokens@^2.0.2:
version "2.0.11" version "2.0.12"
resolved "https://registry.yarnpkg.com/gatsby-design-tokens/-/gatsby-design-tokens-2.0.11.tgz#b0cf12abc283c73e13de3f610fbcec5fce3e7b48" resolved "https://registry.yarnpkg.com/gatsby-design-tokens/-/gatsby-design-tokens-2.0.12.tgz#22b8a3fa827fc964b4a81fd198110e887a469ce0"
integrity sha512-Hp4mFCDydvYkAYp2icEdilYptyKBSaDlYFD7/GO1+QJHskc+Yy9mhFIZOnC9Fa8XOIRp59RBkh71Jv4Pln2vdw== integrity sha512-jWbUDon18SA+GSumUaBb6uDsa6qLcfnv8P0nAkM0gvsCUxa4j/AevirpX34QXIWM9vsMaUQLVUiZAxOzqLvm4w==
dependencies: dependencies:
hex2rgba "^0.0.1" hex2rgba "^0.0.1"
@ -7059,28 +7046,7 @@ gatsby-source-filesystem@2.3.30:
valid-url "^1.0.9" valid-url "^1.0.9"
xstate "^4.11.0" xstate "^4.11.0"
gatsby-telemetry@^1.3.35: gatsby-telemetry@^1.3.35, gatsby-telemetry@^1.3.36:
version "1.3.35"
resolved "https://registry.yarnpkg.com/gatsby-telemetry/-/gatsby-telemetry-1.3.35.tgz#e188b7dac1c6edb0b908a7f67bb12082d9dc79c5"
integrity sha512-MFMQl5KCOO6Xzlp2JMO4bRbsh1rjQDsbkJRZgYZB9izmPSK8AgNrHCjruxZC448ndtUfIVwjHnV+/K18XuPCHw==
dependencies:
"@babel/code-frame" "^7.10.4"
"@babel/runtime" "^7.11.2"
"@turist/fetch" "^7.1.7"
"@turist/time" "^0.0.1"
async-retry-ng "^2.0.1"
boxen "^4.2.0"
configstore "^5.0.1"
envinfo "^7.7.3"
fs-extra "^8.1.0"
gatsby-core-utils "^1.3.20"
git-up "^4.0.2"
is-docker "^2.1.1"
lodash "^4.17.20"
node-fetch "^2.6.0"
uuid "3.4.0"
gatsby-telemetry@^1.3.36:
version "1.3.36" version "1.3.36"
resolved "https://registry.yarnpkg.com/gatsby-telemetry/-/gatsby-telemetry-1.3.36.tgz#992cbb57ed019c4320093e4ee8ad26fe97152155" resolved "https://registry.yarnpkg.com/gatsby-telemetry/-/gatsby-telemetry-1.3.36.tgz#992cbb57ed019c4320093e4ee8ad26fe97152155"
integrity sha512-a1g6WJ86BzOsnr4jemHgNSlpK7annC17m9sQ31iPQNLciowwfULbEKvrKCRYk1ABRUb1VNg61z6dzAnktF9giA== integrity sha512-a1g6WJ86BzOsnr4jemHgNSlpK7annC17m9sQ31iPQNLciowwfULbEKvrKCRYk1ABRUb1VNg61z6dzAnktF9giA==
@ -7848,9 +7814,9 @@ hash.js@^1.0.0, hash.js@^1.0.3:
minimalistic-assert "^1.0.1" minimalistic-assert "^1.0.1"
hasha@^5.2.0: hasha@^5.2.0:
version "5.2.0" version "5.2.1"
resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.0.tgz#33094d1f69c40a4a6ac7be53d5fe3ff95a269e0c" resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.1.tgz#0e5b492aa40de3819e80955f221d2fccef55b5aa"
integrity sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw== integrity sha512-x15jnRSHTi3VmH+oHtVb9kgU/HuKOK8mjK8iCL3dPQXh4YJlUb9YSI8ZLiiqLAIvY2wuDIlZYZppy8vB2XISkQ==
dependencies: dependencies:
is-stream "^2.0.0" is-stream "^2.0.0"
type-fest "^0.8.0" type-fest "^0.8.0"
@ -8495,9 +8461,9 @@ ip-regex@^2.1.0:
integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=
ip-regex@^4.1.0: ip-regex@^4.1.0:
version "4.1.0" version "4.2.0"
resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.1.0.tgz#5ad62f685a14edb421abebc2fff8db94df67b455" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.2.0.tgz#a03f5eb661d9a154e3973a03de8b23dd0ad6892e"
integrity sha512-pKnZpbgCTfH/1NLIlOduP/V+WRXzC2MOz3Qo8xmxk8C5GudJLgK5QyLVXOSWy3ParAH7Eemurl3xjv/WXYFvMA== integrity sha512-n5cDDeTWWRwK1EBoWwRti+8nP4NbytBBY0pldmnIkq6Z55KNFmWofh4rl9dPZpj+U/nVq7gweR3ylrvMt4YZ5A==
ip@^1.1.0, ip@^1.1.5: ip@^1.1.0, ip@^1.1.5:
version "1.1.5" version "1.1.5"
@ -11271,6 +11237,11 @@ parseqs@0.0.5:
dependencies: dependencies:
better-assert "~1.0.0" better-assert "~1.0.0"
parseqs@0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5"
integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==
parseuri@0.0.5: parseuri@0.0.5:
version "0.0.5" version "0.0.5"
resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a"
@ -11278,6 +11249,11 @@ parseuri@0.0.5:
dependencies: dependencies:
better-assert "~1.0.0" better-assert "~1.0.0"
parseuri@0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a"
integrity sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==
parseurl@^1.3.3, parseurl@~1.3.2, parseurl@~1.3.3: parseurl@^1.3.3, parseurl@~1.3.2, parseurl@~1.3.3:
version "1.3.3" version "1.3.3"
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
@ -11592,9 +11568,9 @@ postcss-flexbugs-fixes@^4.2.1:
postcss "^7.0.26" postcss "^7.0.26"
postcss-load-config@^2.0.0: postcss-load-config@^2.0.0:
version "2.1.1" version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw== integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies: dependencies:
cosmiconfig "^5.0.0" cosmiconfig "^5.0.0"
import-cwd "^2.0.0" import-cwd "^2.0.0"
@ -11822,9 +11798,9 @@ postcss-selector-parser@^3.0.0:
uniq "^1.0.1" uniq "^1.0.1"
postcss-selector-parser@^6.0.2: postcss-selector-parser@^6.0.2:
version "6.0.3" version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.3.tgz#766d77728728817cc140fa1ac6da5e77f9fada98" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-0ClFaY4X1ra21LRqbW6y3rUbWcxnSVkDFG57R7Nxus9J9myPFlv+jYDMohzpkBx0RrjjiqjtycpchQ+PLGmZ9w== integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies: dependencies:
cssesc "^3.0.0" cssesc "^3.0.0"
indexes-of "^1.0.1" indexes-of "^1.0.1"
@ -11870,9 +11846,9 @@ postcss@^6.0.1, postcss@^6.0.23:
supports-color "^5.4.0" supports-color "^5.4.0"
postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.26, postcss@^7.0.27, postcss@^7.0.32: postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.26, postcss@^7.0.27, postcss@^7.0.32:
version "7.0.34" version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw== integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies: dependencies:
chalk "^2.4.2" chalk "^2.4.2"
source-map "^0.6.1" source-map "^0.6.1"
@ -12165,9 +12141,9 @@ query-string@^5.0.1:
strict-uri-encode "^1.0.0" strict-uri-encode "^1.0.0"
query-string@^6.13.1: query-string@^6.13.1:
version "6.13.2" version "6.13.4"
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.2.tgz#3585aa9412c957cbd358fd5eaca7466f05586dda" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.4.tgz#b35a9a3bd4955bce55f94feb0e819b3d0be6f66f"
integrity sha512-BMmDaUiLDFU1hlM38jTFcRt7HYiGP/zt1sRzrIWm5zpeEuO1rkbPS0ELI3uehoLuuhHDCS8u8lhFN3fEN4JzPQ== integrity sha512-E2NPIeJoBEJGQNy3ib1k/Z/OkDBUKIo8IV2ZVwbKfoa65IS9unqWWUlLcbfU70Da0qNoxUZZA8CfKUjKLE641Q==
dependencies: dependencies:
decode-uri-component "^0.2.0" decode-uri-component "^0.2.0"
split-on-first "^1.0.0" split-on-first "^1.0.0"
@ -13612,11 +13588,11 @@ socket.io-client@2.3.0:
to-array "0.1.4" to-array "0.1.4"
socket.io-parser@~3.3.0: socket.io-parser@~3.3.0:
version "3.3.0" version "3.3.1"
resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.0.tgz#2b52a96a509fdf31440ba40fed6094c7d4f1262f" resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.1.tgz#f07d9c8cb3fb92633aa93e76d98fd3a334623199"
integrity sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng== integrity sha512-1QLvVAe8dTz+mKmZ07Swxt+LAo4Y1ff50rlyoEx00TQmDFVQYPfcqGvIDJLGaBdhdNCecXtyKpD+EgKGcmmbuQ==
dependencies: dependencies:
component-emitter "1.2.1" component-emitter "~1.3.0"
debug "~3.1.0" debug "~3.1.0"
isarray "2.0.1" isarray "2.0.1"
@ -14525,9 +14501,9 @@ tiny-warning@^1.0.2:
integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
tinycolor2@^1.4.1: tinycolor2@^1.4.1:
version "1.4.1" version "1.4.2"
resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803"
integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g= integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==
tmp@^0.0.33: tmp@^0.0.33:
version "0.0.33" version "0.0.33"