UNPKG

zephyr-agent

Version:
88 lines (87 loc) • 3.72 kB
"use strict"; var __webpack_require__ = {}; (()=>{ __webpack_require__.d = (exports1, getters, values)=>{ var define = (defs, kind)=>{ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, { enumerable: true, [kind]: defs[key] }); }; define(getters, "get"); define(values, "value"); }; })(); (()=>{ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop); })(); (()=>{ __webpack_require__.r = (exports1)=>{ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, { value: 'Module' }); Object.defineProperty(exports1, '__esModule', { value: true }); }; })(); var __webpack_exports__ = {}; __webpack_require__.r(__webpack_exports__); __webpack_require__.d(__webpack_exports__, { zeUploadSnapshot: ()=>zeUploadSnapshot }); const external_crypto_namespaceObject = require("crypto"); const index_js_namespaceObject = require("../errors/index.js"); const upload_snapshot_js_namespaceObject = require("../http/upload-snapshot.js"); const picocolor_js_namespaceObject = require("../logging/picocolor.js"); async function zeUploadSnapshot(zephyr_engine, { snapshot }) { const zeStart = Date.now(); const application_uid = zephyr_engine.application_uid; const logger = await zephyr_engine.logger; const buildEnv = zephyr_engine.env.isCI ? 'ci' : 'local'; const envs = process.env; const ze_envs = {}; for (const [key, value] of Object.entries(envs))if (key.startsWith('ZE_PUBLIC_') && 'string' == typeof value) ze_envs[key] = value; const zeVarsEntries = Object.entries(ze_envs); if (zeVarsEntries.length > 0) { const sortedVariables = zeVarsEntries.map(([key, value])=>`${key}=${value}`).sort().join('\n'); const canonicalString = `${application_uid}\n${sortedVariables}`; const hash = (0, external_crypto_namespaceObject.createHash)('sha256'); hash.update(canonicalString, 'utf-8'); snapshot.ze_envs_hash = hash.digest('hex'); zephyr_engine.ze_env_vars = ze_envs; zephyr_engine.ze_env_vars_hash = snapshot.ze_envs_hash; } const edgeTodo = await (0, upload_snapshot_js_namespaceObject.uploadSnapshot)({ body: snapshot, application_uid }); const worker_version = edgeTodo?.worker_version; if ('string' == typeof worker_version && worker_version.length > 0) { zephyr_engine.worker_version = worker_version; snapshot.worker_version = snapshot.worker_version ?? worker_version; } const versionUrl = edgeTodo?.urls?.version; if (!versionUrl) { logger({ level: 'error', action: 'snapshot:upload:failed', message: `failed uploading of ${buildEnv} snapshot to zephyr` }); throw new index_js_namespaceObject.ZephyrError(index_js_namespaceObject.ZeErrors.ERR_SNAPSHOT_UPLOADS_NO_RESULTS); } logger({ level: 'info', action: 'snapshot:upload:done', message: `Uploaded ${(0, picocolor_js_namespaceObject.green)(buildEnv)} snapshot in ${(0, picocolor_js_namespaceObject.yellow)(`${Date.now() - zeStart}`)}ms` }); return versionUrl; } exports.zeUploadSnapshot = __webpack_exports__.zeUploadSnapshot; for(var __rspack_i in __webpack_exports__)if (-1 === [ "zeUploadSnapshot" ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i]; Object.defineProperty(exports, '__esModule', { value: true }); //# sourceMappingURL=ze-upload-snapshot.js.map