UNPKG

6.45 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/remoteBuilder/builder-cli.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;;2CAOA,WAAuB,IAAvB,EAAsC;AACpC,QAAI,QAAQ,GAAR,CAAY,wBAAZ,IAAwC,IAA5C,EAAkD;AAChD,YAAM,IAAI,KAAJ,CAAU,8DAAV,CAAN;AACD;;AAED,UAAM,aAAa,QAAQ,GAAR,CAAY,WAA/B;;AACA,QAAI,cAAc,IAAlB,EAAwB;AACtB,YAAM,IAAI,KAAJ,CAAU,iDAAV,CAAN;AACD;;AAED,UAAM,UAAU,KAAK,OAArB;;AACA,QAAI,KAAK,QAAL,IAAiB,IAArB,EAA2B;AACzB,YAAM,IAAI,KAAJ,CAAU,wBAAV,CAAN;AACD;;AACD,QAAI,WAAW,IAAf,EAAqB;AACnB,YAAM,IAAI,KAAJ,CAAU,4BAAV,CAAN;AACD;;AACD,QAAI,CAAC,MAAM,OAAN,CAAc,OAAd,CAAL,EAA6B;AAC3B,YAAM,IAAI,KAAJ,CAAU,sCAAV,CAAN;AACD;;AAED,UAAM,WAAW,aAAa,KAAK,GAAlB,GAAwB,WAAzC;AACA,UAAM,OAAO,MAAM,0BAAS,QAAT,CAAnB;AAEA,UAAM,gBAAgB,QAAQ,GAAR,CAAY,eAAlC;;AACA,QAAI,cAAc,IAAlB,EAAwB;AACtB,YAAM,IAAI,KAAJ,CAAU,qDAAV,CAAN;AACD,KA3BmC,CA6BpC;;;AACA,UAAM,cAAc,aAAa,KAAK,GAAlB,GAAwB,QAAQ,CAAR,EAAW,eAAvD,CA9BoC,CA+BpC;;AACA,UAAM,UAA4C;AAChD,iBADgD;AAEhD,gBAFgD;AAGhD,OAAC,KAAK,QAAN,GAAiB,QAAQ,GAAR,CAAY,MAAM,GAAG,IAAH,GAAU,GAAV,GAAgB,GAAG,IAArC,CAH+B;AAIhD,eAAS;AAJuC,KAAlD;AAMA,UAAM,WAAW,KAAI,YAAJ,EAAa,OAAb,CAAjB;AAEA,UAAM,YAAiC,EAAvC;AACA,UAAM,qBAAqB,cAAgB,MAAhB,GAAyB,CAApD;AACA,aAAS,eAAT,CAAyB,SAAQ;AAC/B,UAAI,MAAM,IAAN,IAAc,IAAlB,EAAwB;AACtB;AACD;;AAED,gBAAU,IAAV,CAAe;AACb,cAAM,MAAM,IAAN,CAAW,SAAX,CAAqB,kBAArB,CADO;AAEb,gBAAQ,MAAM,MAAN,IAAgB,IAAhB,GAAuB,IAAvB,GAA8B,MAAM,MAAN,CAAa,IAFtC;AAGb,cAAM,MAAM,IAHC;AAIb,0BAAkB,MAAM,gBAJX;AAKb,2BAAmB,MAAM,iBAAN,KAA4B,IALlC;AAMb,oBAAY,MAAM;AANL,OAAf;AAQD,KAbD;;AAeA,aAAS,sBAAT,GAAkC,CAAC,MAAD,EAAS,QAAT,EAAmB,IAAnB,KAA2B;AAC3D;AACA,YAAM,YAAY,OAAO,IAAP,KAAgB,MAAhB,IAA0B,CAAE,OAAsB,gBAAlD,GAAqE,aAArE,GAAqF,UAAvG;AACA,aAAO,YAAY,KAAK,GAAjB,GAAuB,KAAK,OAAO,IAAI,IAAI,SAAK,IAAL,CAAU,EAA5D;AACD,KAJD,CAzDoC,CA+DpC;;;AACA,UAAM,SAAS,MAAT,CAAe,OAAA,MAAA,CAAA,EAAA,EAChB,KAAK,aADW,EACE;AACrB,eAAS,IADY;AAErB,mBAAa,IAFQ;AAGrB,iBAAW,IAHU;AAIrB,iBAAW,IAJU;AAKrB,6BAAuB,IALF;AAMrB,wBAAkB,IANG;AAOrB,mBAAa;AACX,gBAAQ,aADG;AAEX,wBAAgB,aAAa,KAAK,GAAlB,GAAwB,KAAK;AAFlC;AAPQ,KADF,CAAf,EAYH,KAAK,QAZF,EAYY,KAAK,WAZjB,EAY8B,KAAK,cAZnC,CAAN,CAhEoC,CA8EpC;;AACA,UAAM,2BAAU,KAAK,IAAL,CAAU,QAAQ,GAAR,CAAY,wBAAtB,EAAkD,qBAAlD,CAAV,EAAoF,KAAK,SAAL,CAAe,SAAf,CAApF,CAAN;AACD,G;;kBAhFI,O;;;;;;;AAJL,IAAI,QAAQ,GAAR,CAAY,kCAAZ,IAAkD,IAAtD,EAA4D;AAC1D,UAAQ,GAAR,CAAY,kCAAZ,GAAiD,MAAjD;AACD;;AAoFD,QAAQ,KAAK,KAAL,CAAW,QAAQ,IAAR,CAAa,CAAb,CAAX,CAAR,EACG,KADH,CACS,SAAQ;AACb,UAAQ,QAAR,GAAmB,CAAnB;AACA,SAAO,2BAAU,KAAK,IAAL,CAAU,QAAQ,GAAR,CAAY,wBAAtB,EAAkD,qBAAlD,CAAV,EAAoF,CAAC,MAAM,KAAN,IAAe,KAAhB,EAAuB,QAAvB,EAApF,CAAP;AACD,CAJH,E","sourcesContent":["import { readJson, writeFile } from \"fs-extra-p\"\nimport * as path from \"path\"\nimport { UploadTask, Arch, Packager, PackagerOptions, PublishOptions } from \"..\"\nimport SnapTarget from \"../targets/snap\"\n\nif (process.env.BUILDER_REMOVE_STAGE_EVEN_IF_DEBUG == null) {\n process.env.BUILDER_REMOVE_STAGE_EVEN_IF_DEBUG = \"true\"\n}\n\nasync function doBuild(data: BuildTask): Promise<void> {\n if (process.env.ELECTRON_BUILDER_TMP_DIR == null) {\n throw new Error(\"Env ELECTRON_BUILDER_TMP_DIR must be set for builder process\")\n }\n\n const projectDir = process.env.PROJECT_DIR\n if (projectDir == null) {\n throw new Error(\"Env PROJECT_DIR must be set for builder process\")\n }\n\n const targets = data.targets\n if (data.platform == null) {\n throw new Error(\"platform not specified\")\n }\n if (targets == null) {\n throw new Error(\"targets path not specified\")\n }\n if (!Array.isArray(targets)) {\n throw new Error(\"targets must be array of target name\")\n }\n\n const infoFile = projectDir + path.sep + \"info.json\"\n const info = await readJson(infoFile)\n\n const projectOutDir = process.env.PROJECT_OUT_DIR\n if (projectDir == null) {\n throw new Error(\"Env PROJECT_OUT_DIR must be set for builder process\")\n }\n\n // yes, for now we expect the only target\n const prepackaged = projectDir + path.sep + targets[0].unpackedDirName\n // do not use build function because we don't need to publish artifacts\n const options: PackagerOptions & PublishOptions = {\n prepackaged,\n projectDir,\n [data.platform]: targets.map(it => it.name + \":\" + it.arch),\n publish: \"never\",\n }\n const packager = new Packager(options)\n\n const artifacts: Array<ArtifactInfo> = []\n const relativePathOffset = projectOutDir!!.length + 1\n packager.artifactCreated(event => {\n if (event.file == null) {\n return\n }\n\n artifacts.push({\n file: event.file.substring(relativePathOffset),\n target: event.target == null ? null : event.target.name,\n arch: event.arch,\n safeArtifactName: event.safeArtifactName,\n isWriteUpdateInfo: event.isWriteUpdateInfo === true,\n updateInfo: event.updateInfo,\n })\n })\n\n packager.stageDirPathCustomizer = (target, packager, arch) => {\n // snap creates a lot of files and so, we cannot use tmpfs to avoid out of memory error\n const parentDir = target.name === \"snap\" && !(target as SnapTarget).isUseTemplateApp ? projectOutDir : projectDir\n return parentDir + path.sep + `__${target.name}-${Arch[arch]}`\n }\n\n // _build method expects final effective configuration - packager.options.config is ignored\n await packager._build({\n ...info.configuration,\n publish: null,\n beforeBuild: null,\n afterPack: null,\n afterSign: null,\n afterAllArtifactBuild: null,\n onNodeModuleFile: null,\n directories: {\n output: projectOutDir,\n buildResources: projectDir + path.sep + info.buildResourceDirName\n },\n }, info.metadata, info.devMetadata, info.repositoryInfo)\n\n // writeJson must be not used because it adds unwanted \\n as last file symbol\n await writeFile(path.join(process.env.ELECTRON_BUILDER_TMP_DIR!!, \"__build-result.json\"), JSON.stringify(artifacts))\n}\n\ndoBuild(JSON.parse(process.argv[2]))\n .catch(error => {\n process.exitCode = 0\n return writeFile(path.join(process.env.ELECTRON_BUILDER_TMP_DIR!!, \"__build-result.json\"), (error.stack || error).toString())\n })\n\ninterface TargetInfo {\n name: string\n arch: string\n unpackedDirName: string\n}\n\ninterface ArtifactInfo extends UploadTask {\n target: string | null\n\n readonly isWriteUpdateInfo?: boolean\n readonly updateInfo?: any\n}\n\ninterface BuildTask {\n platform: string\n targets: Array<TargetInfo>\n}"],"sourceRoot":""}