@geekmidas/cli 10.0.0-alpha.62 → 10.0.0-alpha.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/README.md +2 -0
  2. package/dist/{HostingerProvider-B92qH4dC.mjs → HostingerProvider-DBBwpDjn.mjs} +2 -2
  3. package/dist/{HostingerProvider-B92qH4dC.mjs.map → HostingerProvider-DBBwpDjn.mjs.map} +1 -1
  4. package/dist/{HostingerProvider-DyD1Hin8.cjs → HostingerProvider-mJ7YruxH.cjs} +2 -2
  5. package/dist/{HostingerProvider-DyD1Hin8.cjs.map → HostingerProvider-mJ7YruxH.cjs.map} +1 -1
  6. package/dist/{LegacyStateStore-UHJEBLdn.cjs → LegacyStateStore-CP7SZwTP.cjs} +2 -2
  7. package/dist/{LegacyStateStore-UHJEBLdn.cjs.map → LegacyStateStore-CP7SZwTP.cjs.map} +1 -1
  8. package/dist/{LegacyStateStore-A8d2GdT7.mjs → LegacyStateStore-Q3GmKOdw.mjs} +2 -2
  9. package/dist/{LegacyStateStore-A8d2GdT7.mjs.map → LegacyStateStore-Q3GmKOdw.mjs.map} +1 -1
  10. package/dist/{LocalStateStore-B51rnfgn.mjs → LocalStateStore-BGIXcrvX.mjs} +2 -2
  11. package/dist/{LocalStateStore-B51rnfgn.mjs.map → LocalStateStore-BGIXcrvX.mjs.map} +1 -1
  12. package/dist/{LocalStateStore-COW3Ldwa.cjs → LocalStateStore-sS8mvLeq.cjs} +2 -2
  13. package/dist/{LocalStateStore-COW3Ldwa.cjs.map → LocalStateStore-sS8mvLeq.cjs.map} +1 -1
  14. package/dist/{OpenApiTsGenerator-BSrgw7B0.cjs → OpenApiTsGenerator-CjHWFRDd.cjs} +2 -2
  15. package/dist/{OpenApiTsGenerator-BSrgw7B0.cjs.map → OpenApiTsGenerator-CjHWFRDd.cjs.map} +1 -1
  16. package/dist/{OpenApiTsGenerator-q5B0z8Xg.mjs → OpenApiTsGenerator-CnAwhGxi.mjs} +2 -2
  17. package/dist/{OpenApiTsGenerator-q5B0z8Xg.mjs.map → OpenApiTsGenerator-CnAwhGxi.mjs.map} +1 -1
  18. package/dist/{S3StateStore-WUJGdRNL.cjs → S3StateStore-6jqITH2F.cjs} +2 -2
  19. package/dist/{S3StateStore-WUJGdRNL.cjs.map → S3StateStore-6jqITH2F.cjs.map} +1 -1
  20. package/dist/{S3StateStore-CJewPhgz.mjs → S3StateStore-D7l_lWJ3.mjs} +2 -2
  21. package/dist/{S3StateStore-CJewPhgz.mjs.map → S3StateStore-D7l_lWJ3.mjs.map} +1 -1
  22. package/dist/{SSMStateStore-Zejt42V8.cjs → SSMStateStore-B__F7IJa.cjs} +2 -2
  23. package/dist/{SSMStateStore-Zejt42V8.cjs.map → SSMStateStore-B__F7IJa.cjs.map} +1 -1
  24. package/dist/{SSMStateStore-iK5UKp9d.mjs → SSMStateStore-CAQDVpoc.mjs} +2 -2
  25. package/dist/{SSMStateStore-iK5UKp9d.mjs.map → SSMStateStore-CAQDVpoc.mjs.map} +1 -1
  26. package/dist/{bundler-CfH9frOS.cjs → bundler-DLfOn0ls.cjs} +3 -3
  27. package/dist/{bundler-CfH9frOS.cjs.map → bundler-DLfOn0ls.cjs.map} +1 -1
  28. package/dist/{bundler-DN5r4x5b.mjs → bundler-DyWI41Iy.mjs} +2 -2
  29. package/dist/{bundler-DN5r4x5b.mjs.map → bundler-DyWI41Iy.mjs.map} +1 -1
  30. package/dist/{cli-DOAUp80L.cjs → cli-D-ZM-X2s.cjs} +4 -4
  31. package/dist/{cli-DOAUp80L.cjs.map → cli-D-ZM-X2s.cjs.map} +1 -1
  32. package/dist/{cli-DYwxmfsW.mjs → cli-PkVF28LM.mjs} +4 -4
  33. package/dist/{cli-DYwxmfsW.mjs.map → cli-PkVF28LM.mjs.map} +1 -1
  34. package/dist/{config-BYh9S0cZ.cjs → config-BEJYKd4s.cjs} +132 -18
  35. package/dist/config-BEJYKd4s.cjs.map +1 -0
  36. package/dist/config-C2BUosLm.d.mts +256 -0
  37. package/dist/config-C2BUosLm.d.mts.map +1 -0
  38. package/dist/config-CemHVcIr.d.cts +256 -0
  39. package/dist/config-CemHVcIr.d.cts.map +1 -0
  40. package/dist/{config-Bf4-bROQ.mjs → config-LKKCVCnC.mjs} +109 -19
  41. package/dist/config-LKKCVCnC.mjs.map +1 -0
  42. package/dist/config.cjs +6 -2
  43. package/dist/config.d.cts +3 -210
  44. package/dist/config.d.mts +3 -210
  45. package/dist/config.mjs +3 -3
  46. package/dist/deploy/public.cjs +151 -5
  47. package/dist/deploy/public.cjs.map +1 -0
  48. package/dist/deploy/public.d.cts +186 -1
  49. package/dist/deploy/public.d.cts.map +1 -1
  50. package/dist/deploy/public.d.mts +186 -1
  51. package/dist/deploy/public.d.mts.map +1 -1
  52. package/dist/deploy/public.mjs +134 -6
  53. package/dist/deploy/public.mjs.map +1 -0
  54. package/dist/deploy/sniffer-envparser-worker.cjs +54 -0
  55. package/dist/deploy/sniffer-envparser-worker.cjs.map +1 -0
  56. package/dist/deploy/sniffer-envparser-worker.d.cts +1 -0
  57. package/dist/deploy/sniffer-envparser-worker.d.mts +1 -0
  58. package/dist/deploy/sniffer-envparser-worker.mjs +55 -0
  59. package/dist/deploy/sniffer-envparser-worker.mjs.map +1 -0
  60. package/dist/{deploy-DSaCYvcO.cjs → deploy-ABBI0lf1.cjs} +7 -7
  61. package/dist/{deploy-DSaCYvcO.cjs.map → deploy-ABBI0lf1.cjs.map} +1 -1
  62. package/dist/{deploy-D8Qr-Xto.cjs → deploy-BiMrP9i7.cjs} +11 -9
  63. package/dist/deploy-BiMrP9i7.cjs.map +1 -0
  64. package/dist/{deploy-B7jvUORo.mjs → deploy-CG8bfFij.mjs} +7 -7
  65. package/dist/{deploy-B7jvUORo.mjs.map → deploy-CG8bfFij.mjs.map} +1 -1
  66. package/dist/{deploy-Cg9fae7a.mjs → deploy-CGW-QY9D.mjs} +11 -9
  67. package/dist/deploy-CGW-QY9D.mjs.map +1 -0
  68. package/dist/discover-B6yPpvRV.d.mts +99 -0
  69. package/dist/discover-B6yPpvRV.d.mts.map +1 -0
  70. package/dist/discover-B_IkPukx.d.cts +99 -0
  71. package/dist/discover-B_IkPukx.d.cts.map +1 -0
  72. package/dist/discover-BaT6bpnA.mjs +614 -0
  73. package/dist/discover-BaT6bpnA.mjs.map +1 -0
  74. package/dist/discover-C_6COHEv.cjs +729 -0
  75. package/dist/discover-C_6COHEv.cjs.map +1 -0
  76. package/dist/{dokploy-CD9PY-3D.mjs → dokploy-CwdmlyQL.mjs} +2 -2
  77. package/dist/{dokploy-CD9PY-3D.mjs.map → dokploy-CwdmlyQL.mjs.map} +1 -1
  78. package/dist/{dokploy-Ey2foJLv.cjs → dokploy-QJxMhxdf.cjs} +2 -2
  79. package/dist/{dokploy-Ey2foJLv.cjs.map → dokploy-QJxMhxdf.cjs.map} +1 -1
  80. package/dist/{encryption-CVwvGbsL.mjs → encryption-CbQG_ayW.mjs} +4 -4
  81. package/dist/{encryption-CVwvGbsL.mjs.map → encryption-CbQG_ayW.mjs.map} +1 -1
  82. package/dist/{encryption-ChBk3hTj.cjs → encryption-DXw3jj0c.cjs} +4 -4
  83. package/dist/{encryption-ChBk3hTj.cjs.map → encryption-DXw3jj0c.cjs.map} +1 -1
  84. package/dist/fakes-C9RiT6XG.mjs.map +1 -1
  85. package/dist/fakes-zW-jNAbQ.cjs.map +1 -1
  86. package/dist/{github-OUgPDlqg.cjs → github-BH_mETav.cjs} +3 -3
  87. package/dist/{github-OUgPDlqg.cjs.map → github-BH_mETav.cjs.map} +1 -1
  88. package/dist/{github-BCB3_LBX.mjs → github-ciwbIwVa.mjs} +3 -3
  89. package/dist/{github-BCB3_LBX.mjs.map → github-ciwbIwVa.mjs.map} +1 -1
  90. package/dist/index.cjs +55 -48
  91. package/dist/index.cjs.map +1 -1
  92. package/dist/index.mjs +52 -45
  93. package/dist/index.mjs.map +1 -1
  94. package/dist/{migrate-dnaFMvOm.cjs → migrate-6oa9y_f2.cjs} +5 -5
  95. package/dist/{migrate-dnaFMvOm.cjs.map → migrate-6oa9y_f2.cjs.map} +1 -1
  96. package/dist/{migrate-BoHMqdCu.mjs → migrate-ImBKTBcW.mjs} +5 -5
  97. package/dist/{migrate-BoHMqdCu.mjs.map → migrate-ImBKTBcW.mjs.map} +1 -1
  98. package/dist/openapi.cjs +3 -3
  99. package/dist/openapi.mjs +3 -3
  100. package/dist/{ready-XlNx-Gbo.cjs → ready-BiG0rt4h.cjs} +3 -3
  101. package/dist/{ready-XlNx-Gbo.cjs.map → ready-BiG0rt4h.cjs.map} +1 -1
  102. package/dist/{ready-DQIy21W5.mjs → ready-Bpdnn2ON.mjs} +3 -3
  103. package/dist/{ready-DQIy21W5.mjs.map → ready-Bpdnn2ON.mjs.map} +1 -1
  104. package/dist/reconcile/public.cjs +1 -1
  105. package/dist/reconcile/public.d.cts +3 -76
  106. package/dist/reconcile/public.d.cts.map +1 -1
  107. package/dist/reconcile/public.d.mts +3 -76
  108. package/dist/reconcile/public.d.mts.map +1 -1
  109. package/dist/reconcile/public.mjs +1 -1
  110. package/dist/{resolve-CFCIkm7m.mjs → resolve-B1T0hUaR.mjs} +2 -2
  111. package/dist/{resolve-CFCIkm7m.mjs.map → resolve-B1T0hUaR.mjs.map} +1 -1
  112. package/dist/{resolve-wbv66HjD.cjs → resolve-xytBTtG4.cjs} +2 -2
  113. package/dist/{resolve-wbv66HjD.cjs.map → resolve-xytBTtG4.cjs.map} +1 -1
  114. package/dist/sandbox/config-worker.cjs +43 -0
  115. package/dist/sandbox/config-worker.cjs.map +1 -0
  116. package/dist/sandbox/config-worker.d.cts +1 -0
  117. package/dist/sandbox/config-worker.d.mts +1 -0
  118. package/dist/sandbox/config-worker.mjs +44 -0
  119. package/dist/sandbox/config-worker.mjs.map +1 -0
  120. package/dist/sandbox/discover-worker.cjs +44 -0
  121. package/dist/sandbox/discover-worker.cjs.map +1 -0
  122. package/dist/sandbox/discover-worker.d.cts +1 -0
  123. package/dist/sandbox/discover-worker.d.mts +1 -0
  124. package/dist/sandbox/discover-worker.mjs +45 -0
  125. package/dist/sandbox/discover-worker.mjs.map +1 -0
  126. package/dist/sandbox-M8UnLhXE.d.cts +126 -0
  127. package/dist/sandbox-M8UnLhXE.d.cts.map +1 -0
  128. package/dist/sandbox-M8UnLhXE.d.mts +126 -0
  129. package/dist/sandbox-M8UnLhXE.d.mts.map +1 -0
  130. package/dist/{workspace-BFe57es7.mjs → schemas-Ckm_aBnF.cjs} +71 -982
  131. package/dist/schemas-Ckm_aBnF.cjs.map +1 -0
  132. package/dist/{workspace-B6zQO6RY.cjs → schemas-D2LCF689.mjs} +2 -1168
  133. package/dist/schemas-D2LCF689.mjs.map +1 -0
  134. package/dist/{sniffer-BsfPa-GA.cjs → sniffer-D_SYc_pO.cjs} +369 -207
  135. package/dist/sniffer-D_SYc_pO.cjs.map +1 -0
  136. package/dist/{sniffer-DHE2Nafd.mjs → sniffer-aO_-s5vq.mjs} +336 -204
  137. package/dist/sniffer-aO_-s5vq.mjs.map +1 -0
  138. package/dist/target/public.cjs +1 -1
  139. package/dist/target/public.mjs +1 -1
  140. package/dist/{terminal-6oL0vANs.cjs → terminal-D0f1u0LG.cjs} +6 -6
  141. package/dist/{terminal-6oL0vANs.cjs.map → terminal-D0f1u0LG.cjs.map} +1 -1
  142. package/dist/{terminal-ByZNjuig.mjs → terminal-gMxAo9Dj.mjs} +6 -6
  143. package/dist/{terminal-ByZNjuig.mjs.map → terminal-gMxAo9Dj.mjs.map} +1 -1
  144. package/dist/vitest.cjs +2 -2
  145. package/dist/vitest.mjs +2 -2
  146. package/dist/workerRuntime-BXfhbe13.cjs +108 -0
  147. package/dist/workerRuntime-BXfhbe13.cjs.map +1 -0
  148. package/dist/workerRuntime-CsOyBRx2.mjs +79 -0
  149. package/dist/workerRuntime-CsOyBRx2.mjs.map +1 -0
  150. package/dist/workspace/index.cjs +1 -1
  151. package/dist/workspace/index.mjs +1 -1
  152. package/dist/workspace-Dh7rr7l4.mjs +1024 -0
  153. package/dist/workspace-Dh7rr7l4.mjs.map +1 -0
  154. package/dist/workspace-Kl4NG9IH.cjs +1196 -0
  155. package/dist/workspace-Kl4NG9IH.cjs.map +1 -0
  156. package/package.json +13 -13
  157. package/dist/config-BYh9S0cZ.cjs.map +0 -1
  158. package/dist/config-Bf4-bROQ.mjs.map +0 -1
  159. package/dist/config.d.cts.map +0 -1
  160. package/dist/config.d.mts.map +0 -1
  161. package/dist/deploy-Cg9fae7a.mjs.map +0 -1
  162. package/dist/deploy-D8Qr-Xto.cjs.map +0 -1
  163. package/dist/discover-Bc-4eA_p.cjs +0 -299
  164. package/dist/discover-Bc-4eA_p.cjs.map +0 -1
  165. package/dist/discover-FrYvzkeC.mjs +0 -262
  166. package/dist/discover-FrYvzkeC.mjs.map +0 -1
  167. package/dist/sniffer-BsfPa-GA.cjs.map +0 -1
  168. package/dist/sniffer-DHE2Nafd.mjs.map +0 -1
  169. package/dist/workspace-B6zQO6RY.cjs.map +0 -1
  170. package/dist/workspace-BFe57es7.mjs.map +0 -1
@@ -0,0 +1,54 @@
1
+ let node_url = require("node:url");
2
+ let _geekmidas_envkit_sniffer = require("@geekmidas/envkit/sniffer");
3
+ //#region src/deploy/sniffer-envparser-worker.ts
4
+ /**
5
+ * Subprocess worker for envParser sniffing.
6
+ *
7
+ * Imports an app's envParser module, hands it a SnifferEnvironmentParser and
8
+ * reports which variables it read. A subprocess, like the entry and route
9
+ * sniffers, so the module runs in the sandbox rather than in the deploy, with
10
+ * none of the deploy's environment.
11
+ *
12
+ * Usage:
13
+ * node --import tsx ./sniffer-envparser-worker.ts /path/to/env.ts envParser
14
+ *
15
+ * Output (JSON, last line of stdout):
16
+ * { "envVars": [...], "optionalEnvVars": [...], "unhandledRejections": [...],
17
+ * "warnings": [...], "error": null }
18
+ */
19
+ const modulePath = process.argv[2];
20
+ const exportName = process.argv[3] ?? "default";
21
+ async function sniff() {
22
+ const warnings = [];
23
+ const sniffer = new _geekmidas_envkit_sniffer.SnifferEnvironmentParser();
24
+ const result = await (0, _geekmidas_envkit_sniffer.sniffWithFireAndForget)(sniffer, async () => {
25
+ if (!modulePath) throw new TypeError("No envParser module was given.");
26
+ const envParser = (await import((0, node_url.pathToFileURL)(modulePath).href))[exportName];
27
+ if (typeof envParser !== "function") {
28
+ warnings.push(`[sniffer] Export "${exportName}" from "${modulePath}" is not a function`);
29
+ return;
30
+ }
31
+ const parser = envParser(sniffer);
32
+ if (parser && typeof parser.parse === "function") try {
33
+ parser.parse();
34
+ } catch {}
35
+ });
36
+ const line = JSON.stringify({
37
+ envVars: result.envVars,
38
+ optionalEnvVars: result.optionalEnvVars,
39
+ unhandledRejections: result.unhandledRejections.map((e) => e.message),
40
+ warnings,
41
+ error: result.error ? result.error.message : null
42
+ });
43
+ process.stdout.write(`${line}\n`, () => process.exit(0));
44
+ }
45
+ sniff().catch((e) => {
46
+ console.log(JSON.stringify({
47
+ envVars: [],
48
+ error: e.message || String(e)
49
+ }));
50
+ process.exit(1);
51
+ });
52
+ //#endregion
53
+
54
+ //# sourceMappingURL=sniffer-envparser-worker.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sniffer-envparser-worker.cjs","names":["SnifferEnvironmentParser","sniffWithFireAndForget","pathToFileURL"],"sources":["../../src/deploy/sniffer-envparser-worker.ts"],"sourcesContent":["/**\n * Subprocess worker for envParser sniffing.\n *\n * Imports an app's envParser module, hands it a SnifferEnvironmentParser and\n * reports which variables it read. A subprocess, like the entry and route\n * sniffers, so the module runs in the sandbox rather than in the deploy, with\n * none of the deploy's environment.\n *\n * Usage:\n * node --import tsx ./sniffer-envparser-worker.ts /path/to/env.ts envParser\n *\n * Output (JSON, last line of stdout):\n * { \"envVars\": [...], \"optionalEnvVars\": [...], \"unhandledRejections\": [...],\n * \"warnings\": [...], \"error\": null }\n */\n\nimport { pathToFileURL } from 'node:url';\nimport {\n\tSnifferEnvironmentParser,\n\tsniffWithFireAndForget,\n} from '@geekmidas/envkit/sniffer';\n\nconst modulePath = process.argv[2];\nconst exportName = process.argv[3] ?? 'default';\n\nasync function sniff(): Promise<void> {\n\tconst warnings: string[] = [];\n\tconst sniffer = new SnifferEnvironmentParser();\n\n\tconst result = await sniffWithFireAndForget(sniffer, async () => {\n\t\tif (!modulePath) throw new TypeError('No envParser module was given.');\n\t\tconst module = await import(pathToFileURL(modulePath).href);\n\n\t\tconst envParser = module[exportName];\n\t\tif (typeof envParser !== 'function') {\n\t\t\twarnings.push(\n\t\t\t\t`[sniffer] Export \"${exportName}\" from \"${modulePath}\" is not a function`,\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\t// The envParser function typically creates and configures an\n\t\t// EnvironmentParser; the sniffer implements the same interface.\n\t\tconst parser = envParser(sniffer);\n\n\t\t// A ConfigParser's parse() is what reads the variables.\n\t\tif (parser && typeof parser.parse === 'function') {\n\t\t\ttry {\n\t\t\t\tparser.parse();\n\t\t\t} catch {\n\t\t\t\t// Parsing may fail on the sniffer's mock values; expected.\n\t\t\t}\n\t\t}\n\t});\n\n\tconst line = JSON.stringify({\n\t\tenvVars: result.envVars,\n\t\toptionalEnvVars: result.optionalEnvVars,\n\t\tunhandledRejections: result.unhandledRejections.map((e) => e.message),\n\t\twarnings,\n\t\terror: result.error ? result.error.message : null,\n\t});\n\t// The module may have left a pool or a timer open, so exit — once the\n\t// answer has drained: a pipe on macOS is written asynchronously.\n\tprocess.stdout.write(`${line}\\n`, () => process.exit(0));\n}\n\nsniff().catch((e) => {\n\tconsole.log(JSON.stringify({ envVars: [], error: e.message || String(e) }));\n\tprocess.exit(1);\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAsBA,MAAM,aAAa,QAAQ,KAAK;AAChC,MAAM,aAAa,QAAQ,KAAK,MAAM;AAEtC,eAAe,QAAuB;CACrC,MAAM,WAAqB,CAAC;CAC5B,MAAM,UAAU,IAAIA,0BAAAA,yBAAyB;CAE7C,MAAM,SAAS,OAAA,GAAMC,0BAAAA,uBAAAA,CAAuB,SAAS,YAAY;EAChE,IAAI,CAAC,YAAY,MAAM,IAAI,UAAU,gCAAgC;EAGrE,MAAM,aAAY,MAFG,QAAA,GAAOC,SAAAA,cAAAA,CAAc,UAAU,CAAC,CAAC,MAAA,CAE7B;EACzB,IAAI,OAAO,cAAc,YAAY;GACpC,SAAS,KACR,qBAAqB,WAAW,UAAU,WAAW,oBACtD;GACA;EACD;EAIA,MAAM,SAAS,UAAU,OAAO;EAGhC,IAAI,UAAU,OAAO,OAAO,UAAU,YACrC,IAAI;GACH,OAAO,MAAM;EACd,QAAQ,CAER;CAEF,CAAC;CAED,MAAM,OAAO,KAAK,UAAU;EAC3B,SAAS,OAAO;EAChB,iBAAiB,OAAO;EACxB,qBAAqB,OAAO,oBAAoB,KAAK,MAAM,EAAE,OAAO;EACpE;EACA,OAAO,OAAO,QAAQ,OAAO,MAAM,UAAU;CAC9C,CAAC;CAGD,QAAQ,OAAO,MAAM,GAAG,KAAK,WAAW,QAAQ,KAAK,CAAC,CAAC;AACxD;AAEA,MAAM,CAAC,CAAC,OAAO,MAAM;CACpB,QAAQ,IAAI,KAAK,UAAU;EAAE,SAAS,CAAC;EAAG,OAAO,EAAE,WAAW,OAAO,CAAC;CAAE,CAAC,CAAC;CAC1E,QAAQ,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1 @@
1
+ export {}
@@ -0,0 +1 @@
1
+ export {}
@@ -0,0 +1,55 @@
1
+ import { pathToFileURL } from "node:url";
2
+ import { SnifferEnvironmentParser, sniffWithFireAndForget } from "@geekmidas/envkit/sniffer";
3
+ //#region src/deploy/sniffer-envparser-worker.ts
4
+ /**
5
+ * Subprocess worker for envParser sniffing.
6
+ *
7
+ * Imports an app's envParser module, hands it a SnifferEnvironmentParser and
8
+ * reports which variables it read. A subprocess, like the entry and route
9
+ * sniffers, so the module runs in the sandbox rather than in the deploy, with
10
+ * none of the deploy's environment.
11
+ *
12
+ * Usage:
13
+ * node --import tsx ./sniffer-envparser-worker.ts /path/to/env.ts envParser
14
+ *
15
+ * Output (JSON, last line of stdout):
16
+ * { "envVars": [...], "optionalEnvVars": [...], "unhandledRejections": [...],
17
+ * "warnings": [...], "error": null }
18
+ */
19
+ const modulePath = process.argv[2];
20
+ const exportName = process.argv[3] ?? "default";
21
+ async function sniff() {
22
+ const warnings = [];
23
+ const sniffer = new SnifferEnvironmentParser();
24
+ const result = await sniffWithFireAndForget(sniffer, async () => {
25
+ if (!modulePath) throw new TypeError("No envParser module was given.");
26
+ const envParser = (await import(pathToFileURL(modulePath).href))[exportName];
27
+ if (typeof envParser !== "function") {
28
+ warnings.push(`[sniffer] Export "${exportName}" from "${modulePath}" is not a function`);
29
+ return;
30
+ }
31
+ const parser = envParser(sniffer);
32
+ if (parser && typeof parser.parse === "function") try {
33
+ parser.parse();
34
+ } catch {}
35
+ });
36
+ const line = JSON.stringify({
37
+ envVars: result.envVars,
38
+ optionalEnvVars: result.optionalEnvVars,
39
+ unhandledRejections: result.unhandledRejections.map((e) => e.message),
40
+ warnings,
41
+ error: result.error ? result.error.message : null
42
+ });
43
+ process.stdout.write(`${line}\n`, () => process.exit(0));
44
+ }
45
+ sniff().catch((e) => {
46
+ console.log(JSON.stringify({
47
+ envVars: [],
48
+ error: e.message || String(e)
49
+ }));
50
+ process.exit(1);
51
+ });
52
+ //#endregion
53
+ export {};
54
+
55
+ //# sourceMappingURL=sniffer-envparser-worker.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sniffer-envparser-worker.mjs","names":[],"sources":["../../src/deploy/sniffer-envparser-worker.ts"],"sourcesContent":["/**\n * Subprocess worker for envParser sniffing.\n *\n * Imports an app's envParser module, hands it a SnifferEnvironmentParser and\n * reports which variables it read. A subprocess, like the entry and route\n * sniffers, so the module runs in the sandbox rather than in the deploy, with\n * none of the deploy's environment.\n *\n * Usage:\n * node --import tsx ./sniffer-envparser-worker.ts /path/to/env.ts envParser\n *\n * Output (JSON, last line of stdout):\n * { \"envVars\": [...], \"optionalEnvVars\": [...], \"unhandledRejections\": [...],\n * \"warnings\": [...], \"error\": null }\n */\n\nimport { pathToFileURL } from 'node:url';\nimport {\n\tSnifferEnvironmentParser,\n\tsniffWithFireAndForget,\n} from '@geekmidas/envkit/sniffer';\n\nconst modulePath = process.argv[2];\nconst exportName = process.argv[3] ?? 'default';\n\nasync function sniff(): Promise<void> {\n\tconst warnings: string[] = [];\n\tconst sniffer = new SnifferEnvironmentParser();\n\n\tconst result = await sniffWithFireAndForget(sniffer, async () => {\n\t\tif (!modulePath) throw new TypeError('No envParser module was given.');\n\t\tconst module = await import(pathToFileURL(modulePath).href);\n\n\t\tconst envParser = module[exportName];\n\t\tif (typeof envParser !== 'function') {\n\t\t\twarnings.push(\n\t\t\t\t`[sniffer] Export \"${exportName}\" from \"${modulePath}\" is not a function`,\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\t// The envParser function typically creates and configures an\n\t\t// EnvironmentParser; the sniffer implements the same interface.\n\t\tconst parser = envParser(sniffer);\n\n\t\t// A ConfigParser's parse() is what reads the variables.\n\t\tif (parser && typeof parser.parse === 'function') {\n\t\t\ttry {\n\t\t\t\tparser.parse();\n\t\t\t} catch {\n\t\t\t\t// Parsing may fail on the sniffer's mock values; expected.\n\t\t\t}\n\t\t}\n\t});\n\n\tconst line = JSON.stringify({\n\t\tenvVars: result.envVars,\n\t\toptionalEnvVars: result.optionalEnvVars,\n\t\tunhandledRejections: result.unhandledRejections.map((e) => e.message),\n\t\twarnings,\n\t\terror: result.error ? result.error.message : null,\n\t});\n\t// The module may have left a pool or a timer open, so exit — once the\n\t// answer has drained: a pipe on macOS is written asynchronously.\n\tprocess.stdout.write(`${line}\\n`, () => process.exit(0));\n}\n\nsniff().catch((e) => {\n\tconsole.log(JSON.stringify({ envVars: [], error: e.message || String(e) }));\n\tprocess.exit(1);\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAsBA,MAAM,aAAa,QAAQ,KAAK;AAChC,MAAM,aAAa,QAAQ,KAAK,MAAM;AAEtC,eAAe,QAAuB;CACrC,MAAM,WAAqB,CAAC;CAC5B,MAAM,UAAU,IAAI,yBAAyB;CAE7C,MAAM,SAAS,MAAM,uBAAuB,SAAS,YAAY;EAChE,IAAI,CAAC,YAAY,MAAM,IAAI,UAAU,gCAAgC;EAGrE,MAAM,aAAY,MAFG,OAAO,cAAc,UAAU,CAAC,CAAC,MAAA,CAE7B;EACzB,IAAI,OAAO,cAAc,YAAY;GACpC,SAAS,KACR,qBAAqB,WAAW,UAAU,WAAW,oBACtD;GACA;EACD;EAIA,MAAM,SAAS,UAAU,OAAO;EAGhC,IAAI,UAAU,OAAO,OAAO,UAAU,YACrC,IAAI;GACH,OAAO,MAAM;EACd,QAAQ,CAER;CAEF,CAAC;CAED,MAAM,OAAO,KAAK,UAAU;EAC3B,SAAS,OAAO;EAChB,iBAAiB,OAAO;EACxB,qBAAqB,OAAO,oBAAoB,KAAK,MAAM,EAAE,OAAO;EACpE;EACA,OAAO,OAAO,QAAQ,OAAO,MAAM,UAAU;CAC9C,CAAC;CAGD,QAAQ,OAAO,MAAM,GAAG,KAAK,WAAW,QAAQ,KAAK,CAAC,CAAC;AACxD;AAEA,MAAM,CAAC,CAAC,OAAO,MAAM;CACpB,QAAQ,IAAI,KAAK,UAAU;EAAE,SAAS,CAAC;EAAG,OAAO,EAAE,WAAW,OAAO,CAAC;CAAE,CAAC,CAAC;CAC1E,QAAQ,KAAK,CAAC;AACf,CAAC"}
@@ -1,10 +1,10 @@
1
- const require_sniffer = require("./sniffer-BsfPa-GA.cjs");
2
- const require_discover = require("./discover-Bc-4eA_p.cjs");
3
- const require_config = require("./config-BYh9S0cZ.cjs");
4
- const require_workspace = require("./workspace-B6zQO6RY.cjs");
1
+ const require_sniffer = require("./sniffer-D_SYc_pO.cjs");
2
+ const require_discover = require("./discover-C_6COHEv.cjs");
3
+ const require_config = require("./config-BEJYKd4s.cjs");
4
+ const require_workspace = require("./workspace-Kl4NG9IH.cjs");
5
5
  const require_storage = require("./storage-CSGoC3bK.cjs");
6
6
  const require_store = require("./store-KvNQwYaB.cjs");
7
- const require_terminal = require("./terminal-6oL0vANs.cjs");
7
+ const require_terminal = require("./terminal-D0f1u0LG.cjs");
8
8
  let node_path = require("node:path");
9
9
  let node_fs_promises = require("node:fs/promises");
10
10
  let node_os = require("node:os");
@@ -785,7 +785,7 @@ async function createDnsProvider(options) {
785
785
  if (isDnsProvider(config.provider)) return config.provider;
786
786
  const provider = config.provider;
787
787
  if (provider === "hostinger") {
788
- const { HostingerProvider } = await Promise.resolve().then(() => require("./HostingerProvider-DyD1Hin8.cjs"));
788
+ const { HostingerProvider } = await Promise.resolve().then(() => require("./HostingerProvider-mJ7YruxH.cjs"));
789
789
  return new HostingerProvider();
790
790
  }
791
791
  if (provider === "route53") {
@@ -2970,4 +2970,4 @@ Object.defineProperty(exports, "verifyDokploy", {
2970
2970
  }
2971
2971
  });
2972
2972
 
2973
- //# sourceMappingURL=deploy-DSaCYvcO.cjs.map
2973
+ //# sourceMappingURL=deploy-ABBI0lf1.cjs.map