UNPKG

zephyr-agent

Version:
93 lines (92 loc) • 3.08 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__, { easCiIdentityProvider: ()=>easCiIdentityProvider }); const external_node_child_process_namespaceObject = require("node:child_process"); const external_node_util_namespaceObject = require("node:util"); const external_utils_js_namespaceObject = require("./utils.js"); const execFile = (0, external_node_util_namespaceObject.promisify)(external_node_child_process_namespaceObject.execFile); const EAS_ISSUER = 'https://expo.dev'; const GIT_TIMEOUT_MS = 10000; const easCiIdentityProvider = { provider: 'eas', detect: isEasBuild, infer: inferEasIdentity }; function isEasBuild(env) { return 'true' === env['EAS_BUILD']; } async function inferEasIdentity(env) { const username = env['EAS_BUILD_USERNAME']?.trim() || void 0; const emails = await readCommitEmails(env); if (emails.length > 0) return { provider: 'eas', email: emails[0], emails, username, source: 'git' }; const providerSubject = username ?? env['EAS_BUILD_PROJECT_ID']?.trim(); if (!providerSubject) return; return { provider: 'eas', issuer: EAS_ISSUER, providerSubject, username, providerActorType: 'bot', source: 'env' }; } async function readCommitEmails(env) { const commit = env['EAS_BUILD_GIT_COMMIT_HASH']?.trim() || 'HEAD'; try { const { stdout } = await execFile('git', [ 'show', '-s', '--format=%ae%n%ce', commit ], { cwd: env['EAS_BUILD_WORKINGDIR']?.trim() || process.cwd(), timeout: GIT_TIMEOUT_MS }); return (0, external_utils_js_namespaceObject.getEmails)(stdout.split('\n')); } catch { return []; } } exports.easCiIdentityProvider = __webpack_exports__.easCiIdentityProvider; for(var __rspack_i in __webpack_exports__)if (-1 === [ "easCiIdentityProvider" ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i]; Object.defineProperty(exports, '__esModule', { value: true }); //# sourceMappingURL=eas.js.map