UNPKG

2.87 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/utils/awaitHealthcheck.js"],"names":["healthchecks","data","healthcheck","status","promises","fn","key","start","Date","now","res","timeout","console","error","err","Bluebird","props","__pack","__status","ok","date","env","debug","process"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;2FAEe,kBAAOA,YAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AACTC,YAAAA,IADS,GACF,EADE,EAEb;;AAFa;AAAA,mBAGQD,YAHR;;AAAA;AAGbA,YAAAA,YAHa;AAIb;AACA,gBAAI,CAACA,YAAL,EAAmBA,YAAY,GAAG;AAAEE,cAAAA,WAAW,EAAEF;AAAf,aAAf;AACfG,YAAAA,MANS,GAMA,GANA;AAOPC,YAAAA,QAPO,GAOI,2BAAUJ,YAAV;AAAA,wGAAwB,iBAAOK,EAAP,EAAWC,GAAX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAClC,4BAAWD,EAAX,CADkC;AAAA;AAAA;AAAA;;AAAA,yDACXA,EADW;;AAAA;AAEjCE,wBAAAA,KAFiC,GAEzBC,IAAI,CAACC,GAAL,EAFyB;AAAA;AAAA;AAAA,+BAInBJ,EAAE,EAJiB;;AAAA;AAI/BK,wBAAAA,GAJ+B;AAAA,yDAM9B;AAAEA,0BAAAA,GAAG,EAAHA,GAAF;AAAOC,0BAAAA,OAAO,EAAEH,IAAI,CAACC,GAAL,KAAaF;AAA7B,yBAN8B;;AAAA;AAAA;AAAA;AAQrCJ,wBAAAA,MAAM,GAAG,GAAT;AACAS,wBAAAA,OAAO,CAACC,KAAR,wBAA8BP,GAA9B,yBATqC,CASY;;AATZ,yDAU9B;AAAEI,0BAAAA,GAAG,EAAE,IAAP;AAAaI,0BAAAA,GAAG,aAAhB;AAAkBH,0BAAAA,OAAO,EAAEH,IAAI,CAACC,GAAL,KAAaF;AAAxC,yBAV8B;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAxB;;AAAA;AAAA;AAAA;AAAA,gBAPJ;AAAA;AAAA,mBAqBAQ,qBAASC,KAAT,CAAeZ,QAAf,CArBA;;AAAA;AAqBbH,YAAAA,IArBa;AAAA,8CAuBN;AACLgB,cAAAA,MAAM,EAAE,IADH;AAELC,cAAAA,QAAQ,EAAEf,MAFL;AAGLgB,cAAAA,EAAE,EAAE,IAHC;AAILC,cAAAA,IAAI,EAAE,IAAIZ,IAAJ,EAJD;AAKLa,cAAAA,GAAG,EAAHA,eALK;AAMLC,cAAAA,KAAK,EAAE,sBAAKC,OAAO,CAACF,GAAb,EAAkB,CAAC,gBAAD,EAAmB,WAAnB,CAAlB,CANF;AAOLpB,cAAAA,IAAI,EAAJA;AAPK,aAvBM;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["import env from '@lskjs/env';\nimport Bluebird from 'bluebird';\nimport isFunction from 'lodash/isFunction';\nimport mapValues from 'lodash/mapValues';\nimport pick from 'lodash/pick';\n\n// import some from 'lodash/some';\n\nexport default async (healthchecks) => {\n let data = {};\n // eslint-disable-next-line no-param-reassign\n healthchecks = await healthchecks;\n // eslint-disable-next-line no-param-reassign\n if (!healthchecks) healthchecks = { healthcheck: healthchecks };\n let status = 200;\n const promises = mapValues(healthchecks, async (fn, key) => {\n if (!isFunction(fn)) return fn;\n const start = Date.now();\n try {\n const res = await fn();\n // if (!res) return null;\n return { res, timeout: Date.now() - start };\n } catch (err) {\n status = 500;\n console.error(`healthchecks[${key}] err`, err); //eslint-disable-line\n return { res: null, err, timeout: Date.now() - start };\n }\n });\n\n data = await Bluebird.props(promises);\n\n return {\n __pack: true,\n __status: status,\n ok: true,\n date: new Date(),\n env,\n debug: pick(process.env, ['CI_PIPELINE_ID', 'CI_JOB_ID']),\n data,\n };\n};\n"],"file":"awaitHealthcheck.js"}
\No newline at end of file