@elcrm/deploy 0.0.44 → 0.0.46

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.
@@ -54,13 +54,13 @@ export declare namespace Upload {
54
54
  * @param body - Объект с данными для развертывания
55
55
  * @throws {Error} При ошибке развертывания
56
56
  */
57
- const client: (body: TClient) => Promise<void>;
57
+ const client: (body: TClient) => Promise<Response>;
58
58
  /**
59
59
  * Развертывание серверного приложения из JS файла
60
60
  * @param body - Объект с именем и содержимым файла
61
61
  * @throws {Error} При ошибке развертывания
62
62
  */
63
- const server: (req: any, name?: string) => Promise<void>;
63
+ const server: (req: any, name?: string) => Promise<Response>;
64
64
  const updateServer: (router: string, name?: string) => TUpdateServer;
65
65
  const updateClient: (router: string, name?: string) => TUpdateServer;
66
66
  }
package/dist/lib/index.js CHANGED
@@ -41,9 +41,10 @@ var Upload;
41
41
  const pmId = process.env.pm_id || "0";
42
42
  console.log("folder:", body.folder);
43
43
  console.log(`\u2705 \u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0440\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u043E (PM2 ID: ${pmId})`);
44
+ return new Response("\uD83D\uDDA5\uFE0F \uD83D\uDE0E\uD83E\uDD73");
44
45
  } catch (error) {
45
46
  console.error("\u274C \u041E\u0448\u0438\u0431\u043A\u0430 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044B\u0432\u0430\u043D\u0438\u044F \u043A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F:", error);
46
- throw error;
47
+ return new Response("\u274C\u274C\u274C", { status: 500 });
47
48
  }
48
49
  };
49
50
  Upload.server = async (req, name) => {
@@ -55,24 +56,34 @@ var Upload;
55
56
  if (u) {
56
57
  await Bun.write(`${body.name}.js`, body.upload);
57
58
  const pmId = process.env.pm_id || "0";
58
- const restartProc = Bun.spawn(["pm2", "restart", pmId]);
59
- const restartResult = await restartProc.exited;
60
- if (restartResult !== 0) {
61
- throw new Error(`\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u043A\u0430 PM2 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0430 ${pmId}: \u043A\u043E\u0434 \u0432\u044B\u0445\u043E\u0434\u0430 ${restartResult}`);
62
- }
63
59
  console.log(`\u2705 \u0421\u0435\u0440\u0432\u0435\u0440\u043D\u043E\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 ${body.name}.js \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0440\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u043E (PM2 ID: ${pmId})`);
60
+ const response = new Response("\uD83D\uDDA5\uFE0F \uD83D\uDE0E\uD83E\uDD73");
61
+ setTimeout(async () => {
62
+ try {
63
+ const restartProc = Bun.spawn(["pm2", "restart", pmId]);
64
+ const restartResult = await restartProc.exited;
65
+ if (restartResult !== 0) {
66
+ console.error(`\u274C \u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u043A\u0430 PM2 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0430 ${pmId}: \u043A\u043E\u0434 \u0432\u044B\u0445\u043E\u0434\u0430 ${restartResult}`);
67
+ } else {
68
+ console.log(`\u2705 PM2 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 ${pmId} \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0449\u0435\u043D`);
69
+ }
70
+ } catch (error) {
71
+ console.error(`\u274C \u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u043A\u0435 PM2 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0430 ${pmId}:`, error);
72
+ }
73
+ }, 0);
74
+ return response;
64
75
  }
76
+ return new Response("\u274C\u274C\u274C", { status: 500 });
65
77
  } catch (error) {
66
78
  console.error("\u274C \u041E\u0448\u0438\u0431\u043A\u0430 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044B\u0432\u0430\u043D\u0438\u044F \u0441\u0435\u0440\u0432\u0435\u0440\u043D\u043E\u0433\u043E \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F:", error);
67
- throw error;
79
+ return new Response("\u274C\u274C\u274C", { status: 500 });
68
80
  }
69
81
  };
70
82
  Upload.updateServer = (router, name) => {
71
83
  return {
72
84
  [`/${router}`]: async (req) => {
73
85
  try {
74
- await Upload.server(req, name);
75
- return new Response("\uD83D\uDDA5\uFE0F \uD83D\uDE0E\uD83E\uDD73");
86
+ return await Upload.server(req, name);
76
87
  } catch {
77
88
  return new Response("\u274C\u274C\u274C");
78
89
  }
@@ -89,9 +100,12 @@ var Upload;
89
100
  const n = formdata.get("name");
90
101
  const folder = name || n || "build";
91
102
  if (u) {
92
- Upload.client({ upload: u, folder });
103
+ return await Upload.client({
104
+ upload: u,
105
+ folder
106
+ });
93
107
  }
94
- return new Response("\uD83D\uDDA5\uFE0F \uD83D\uDE0E\uD83E\uDD73");
108
+ return new Response("\u274C\u274C\u274C", { status: 500 });
95
109
  } catch {
96
110
  return new Response("\u274C\u274C\u274C");
97
111
  }
@@ -103,4 +117,4 @@ export {
103
117
  Upload
104
118
  };
105
119
 
106
- //# debugId=E7D104D9C56D79B164756E2164756E21
120
+ //# debugId=0F2C96D5E8331D7B64756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/lib/index.ts"],
4
4
  "sourcesContent": [
5
- "/**\n * Тип данных для развертывания серверного приложения\n */\nexport type TServer = {\n /** Содержимое JavaScript файла для развертывания */\n upload: string | Buffer;\n /** Имя файла (без расширения .js) */\n name: string;\n};\n\n/**\n * Тип данных для развертывания клиентского приложения\n */\nexport type TClient = {\n /** Содержимое tar-архива с клиентской сборкой */\n upload: string | Buffer;\n /** Папка с клиентской сборкой */\n folder: string;\n};\n\nexport type TUpdateServer = {\n [route: string]: (req: any) => Promise<Response>;\n};\n\n/**\n * Утилиты для развертывания приложений elCRM\n *\n * Пример использования:\n *\n * Для развертывания клиентского приложения:\n * ```typescript\n * import { upload } from '@elcrm/deploy';\n *\n * const clientBody = {\n * upload: tarFileBuffer // Buffer с tar-архивом\n * };\n * await upload.client(clientBody);\n * ```\n *\n * Для развертывания серверного приложения:\n * ```typescript\n * import { upload } from '@elcrm/deploy';\n *\n * const serverBody = {\n * name: 'my-server', // Имя JS файла (без расширения .js)\n * upload: jsFileContent // Содержимое JS файла\n * };\n * await upload.server(serverBody);\n * ```\n *\n * Переменные окружения:\n * - pm_id: ID процесса PM2 для перезапуска (по умолчанию \"0\")\n */\nexport namespace Upload {\n /**\n * Развертывание клиентского приложения из tar-архива\n * @param body - Объект с данными для развертывания\n * @throws {Error} При ошибке развертывания\n */\n export const client = async (body: TClient): Promise<void> => {\n try {\n // Записываем tar-архив во временный файл\n await Bun.write(\"build.tar\", body.upload);\n\n // Распаковываем архив (подавляем предупреждения о расширенных атрибутах)\n const extractProc = Bun.spawn(\n [\n \"tar\",\n \"-xzvf\",\n \"build.tar\",\n \"-C\",\n body.folder || \"build\",\n \"--strip-components=1\",\n ],\n {\n env: { ...process.env, TAR_OPTIONS: \"--warning=no-xattr\" },\n stderr: \"pipe\",\n },\n );\n\n // Ждем завершения процесса и фильтруем вывод\n const extractResult = await extractProc.exited;\n\n // Читаем stderr и фильтруем предупреждения о xattr\n const stderrText = await new Response(extractProc.stderr).text();\n // Выводим stderr только если он содержит что-то кроме предупреждений о xattr\n if (\n stderrText &&\n !stderrText.includes(\"LIBARCHIVE.xattr\") &&\n stderrText.trim() !== \"\"\n ) {\n console.error(stderrText);\n }\n\n if (extractResult !== 0) {\n throw new Error(\n `Ошибка распаковки архива: код выхода ${extractResult}`,\n );\n }\n\n // Удаляем файлы, начинающиеся с ._ (файлы ресурсов macOS)\n try {\n const cleanupDotFiles = Bun.spawn([\n \"find\",\n \".\",\n \"-name\",\n \"._*\",\n \"-delete\",\n ]);\n await cleanupDotFiles.exited;\n } catch (cleanupError: any) {\n console.warn(\n \"⚠️ Не удалось удалить файлы ресурсов macOS:\",\n cleanupError.message,\n );\n }\n\n // Удаляем временный файл\n const cleanupProc = Bun.spawn([\"rm\", \"build.tar\"]);\n await cleanupProc.exited;\n\n // Перезапускаем PM2 процесс\n const pmId = process.env.pm_id || \"0\";\n\n /* const restartProc = Bun.spawn([\"pm2\", \"restart\", pmId]);\n const restartResult = await restartProc.exited;\n if (restartResult !== 0) {\n throw new Error(\n `Ошибка перезапуска PM2 процесса ${pmId}: код выхода ${restartResult}`,\n );\n }\n*/\n\n console.log(\"folder:\", body.folder);\n console.log(\n `✅ Клиентское приложение успешно развернуто (PM2 ID: ${pmId})`,\n );\n } catch (error) {\n console.error(\n \"❌ Ошибка развертывания клиентского приложения:\",\n error,\n );\n throw error;\n }\n };\n\n /**\n * Развертывание серверного приложения из JS файла\n * @param body - Объект с именем и содержимым файла\n * @throws {Error} При ошибке развертывания\n */\n export const server = async (req: any, name?: string): Promise<void> => {\n try {\n const formdata = await req.formData();\n const u = formdata.get(\"upload\") as string;\n const n = formdata.get(\"name\") as string;\n const body = { upload: u, name: name || n };\n if (u) {\n // Записываем JS файл\n await Bun.write(`${body.name}.js`, body.upload);\n\n // Перезапускаем PM2 процесс\n const pmId = process.env.pm_id || \"0\";\n const restartProc = Bun.spawn([\"pm2\", \"restart\", pmId]);\n const restartResult = await restartProc.exited;\n if (restartResult !== 0) {\n throw new Error(\n `Ошибка перезапуска PM2 процесса ${pmId}: код выхода ${restartResult}`,\n );\n }\n console.log(\n `✅ Серверное приложение ${body.name}.js успешно развернуто (PM2 ID: ${pmId})`,\n );\n }\n } catch (error) {\n console.error(\n \"❌ Ошибка развертывания серверного приложения:\",\n error,\n );\n throw error;\n }\n };\n\n export const updateServer = (\n router: string,\n name?: string,\n ): TUpdateServer => {\n return {\n [`/${router}`]: async (req: any) => {\n try {\n await Upload.server(req, name);\n return new Response(\"🖥️ 😎🥳\");\n } catch {\n return new Response(\"❌❌❌\");\n }\n },\n };\n };\n\n export const updateClient = (\n router: string,\n name?: string,\n ): TUpdateServer => {\n return {\n [`/${router}-client`]: async (req: any) => {\n try {\n console.log(\"😎🥳\");\n const formdata = await req.formData();\n const u = formdata.get(\"upload\") as string;\n const n = formdata.get(\"name\") as string;\n const folder = name || n || \"build\";\n if (u) {\n Upload.client({ upload: u, folder: folder }); // Temporal fix\n }\n return new Response(\"🖥️ 😎🥳\");\n } catch {\n return new Response(\"❌❌❌\");\n }\n },\n };\n };\n}\n"
5
+ "/**\n * Тип данных для развертывания серверного приложения\n */\nexport type TServer = {\n /** Содержимое JavaScript файла для развертывания */\n upload: string | Buffer;\n /** Имя файла (без расширения .js) */\n name: string;\n};\n\n/**\n * Тип данных для развертывания клиентского приложения\n */\nexport type TClient = {\n /** Содержимое tar-архива с клиентской сборкой */\n upload: string | Buffer;\n /** Папка с клиентской сборкой */\n folder: string;\n};\n\nexport type TUpdateServer = {\n [route: string]: (req: any) => Promise<Response>;\n};\n\n/**\n * Утилиты для развертывания приложений elCRM\n *\n * Пример использования:\n *\n * Для развертывания клиентского приложения:\n * ```typescript\n * import { upload } from '@elcrm/deploy';\n *\n * const clientBody = {\n * upload: tarFileBuffer // Buffer с tar-архивом\n * };\n * await upload.client(clientBody);\n * ```\n *\n * Для развертывания серверного приложения:\n * ```typescript\n * import { upload } from '@elcrm/deploy';\n *\n * const serverBody = {\n * name: 'my-server', // Имя JS файла (без расширения .js)\n * upload: jsFileContent // Содержимое JS файла\n * };\n * await upload.server(serverBody);\n * ```\n *\n * Переменные окружения:\n * - pm_id: ID процесса PM2 для перезапуска (по умолчанию \"0\")\n */\nexport namespace Upload {\n /**\n * Развертывание клиентского приложения из tar-архива\n * @param body - Объект с данными для развертывания\n * @throws {Error} При ошибке развертывания\n */\n export const client = async (body: TClient): Promise<Response> => {\n try {\n // Записываем tar-архив во временный файл\n await Bun.write(\"build.tar\", body.upload);\n\n // Распаковываем архив (подавляем предупреждения о расширенных атрибутах)\n const extractProc = Bun.spawn(\n [\n \"tar\",\n \"-xzvf\",\n \"build.tar\",\n \"-C\",\n body.folder || \"build\",\n \"--strip-components=1\",\n ],\n {\n env: { ...process.env, TAR_OPTIONS: \"--warning=no-xattr\" },\n stderr: \"pipe\",\n },\n );\n\n // Ждем завершения процесса и фильтруем вывод\n const extractResult = await extractProc.exited;\n\n // Читаем stderr и фильтруем предупреждения о xattr\n const stderrText = await new Response(extractProc.stderr).text();\n // Выводим stderr только если он содержит что-то кроме предупреждений о xattr\n if (\n stderrText &&\n !stderrText.includes(\"LIBARCHIVE.xattr\") &&\n stderrText.trim() !== \"\"\n ) {\n console.error(stderrText);\n }\n\n if (extractResult !== 0) {\n throw new Error(\n `Ошибка распаковки архива: код выхода ${extractResult}`,\n );\n }\n\n // Удаляем файлы, начинающиеся с ._ (файлы ресурсов macOS)\n try {\n const cleanupDotFiles = Bun.spawn([\n \"find\",\n \".\",\n \"-name\",\n \"._*\",\n \"-delete\",\n ]);\n await cleanupDotFiles.exited;\n } catch (cleanupError: any) {\n console.warn(\n \"⚠️ Не удалось удалить файлы ресурсов macOS:\",\n cleanupError.message,\n );\n }\n\n // Удаляем временный файл\n const cleanupProc = Bun.spawn([\"rm\", \"build.tar\"]);\n await cleanupProc.exited;\n\n // Перезапускаем PM2 процесс\n const pmId = process.env.pm_id || \"0\";\n\n /* const restartProc = Bun.spawn([\"pm2\", \"restart\", pmId]);\n const restartResult = await restartProc.exited;\n if (restartResult !== 0) {\n throw new Error(\n `Ошибка перезапуска PM2 процесса ${pmId}: код выхода ${restartResult}`,\n );\n }\n*/\n\n console.log(\"folder:\", body.folder);\n console.log(\n `✅ Клиентское приложение успешно развернуто (PM2 ID: ${pmId})`,\n );\n\n return new Response(\"🖥️ 😎🥳\");\n } catch (error) {\n console.error(\n \"❌ Ошибка развертывания клиентского приложения:\",\n error,\n );\n return new Response(\"❌❌❌\", { status: 500 });\n }\n };\n\n /**\n * Развертывание серверного приложения из JS файла\n * @param body - Объект с именем и содержимым файла\n * @throws {Error} При ошибке развертывания\n */\n export const server = async (\n req: any,\n name?: string,\n ): Promise<Response> => {\n try {\n const formdata = await req.formData();\n const u = formdata.get(\"upload\") as string;\n const n = formdata.get(\"name\") as string;\n const body = { upload: u, name: name || n };\n if (u) {\n // Записываем JS файл\n await Bun.write(`${body.name}.js`, body.upload);\n\n const pmId = process.env.pm_id || \"0\";\n console.log(\n `✅ Серверное приложение ${body.name}.js успешно развернуто (PM2 ID: ${pmId})`,\n );\n\n // Возвращаем ответ сразу\n const response = new Response(\"🖥️ 😎🥳\");\n\n // Перезапускаем PM2 процесс в фоне после возврата ответа\n setTimeout(async () => {\n try {\n const restartProc = Bun.spawn([\"pm2\", \"restart\", pmId]);\n const restartResult = await restartProc.exited;\n if (restartResult !== 0) {\n console.error(\n `❌ Ошибка перезапуска PM2 процесса ${pmId}: код выхода ${restartResult}`,\n );\n } else {\n console.log(\n `✅ PM2 процесс ${pmId} успешно перезапущен`,\n );\n }\n } catch (error) {\n console.error(\n `❌ Ошибка при перезапуске PM2 процесса ${pmId}:`,\n error,\n );\n }\n }, 0);\n\n return response;\n }\n return new Response(\"❌❌❌\", { status: 500 });\n } catch (error) {\n console.error(\n \"❌ Ошибка развертывания серверного приложения:\",\n error,\n );\n return new Response(\"❌❌❌\", { status: 500 });\n }\n };\n\n export const updateServer = (\n router: string,\n name?: string,\n ): TUpdateServer => {\n return {\n [`/${router}`]: async (req: any) => {\n try {\n return await Upload.server(req, name);\n } catch {\n return new Response(\"❌❌❌\");\n }\n },\n };\n };\n\n export const updateClient = (\n router: string,\n name?: string,\n ): TUpdateServer => {\n return {\n [`/${router}-client`]: async (req: any) => {\n try {\n console.log(\"😎🥳\");\n const formdata = await req.formData();\n const u = formdata.get(\"upload\") as string;\n const n = formdata.get(\"name\") as string;\n const folder = name || n || \"build\";\n if (u) {\n return await Upload.client({\n upload: u,\n folder: folder,\n }); // Temporal fix\n }\n return new Response(\"❌❌❌\", { status: 500 });\n } catch {\n return new Response(\"❌❌❌\");\n }\n },\n };\n };\n}\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "E7D104D9C56D79B164756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "0F2C96D5E8331D7B64756E2164756E21",
9
9
  "names": []
10
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elcrm/deploy",
3
- "version": "0.0.44",
3
+ "version": "0.0.46",
4
4
  "description": "plugin for elCRM",
5
5
  "type": "module",
6
6
  "author": "MaSkal <dev@elcrm.online>",