@eggjs/scripts 4.0.0 → 5.0.0-beta.27

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 (49) hide show
  1. package/README.md +2 -6
  2. package/bin/dev.js +0 -0
  3. package/dist/baseCommand.d.ts +28 -0
  4. package/dist/baseCommand.js +47 -0
  5. package/dist/commands/start.d.ts +39 -0
  6. package/dist/commands/start.js +277 -0
  7. package/dist/commands/stop.d.ts +21 -0
  8. package/dist/commands/stop.js +68 -0
  9. package/dist/helper.d.ts +11 -0
  10. package/dist/helper.js +35 -0
  11. package/dist/index.d.ts +3 -0
  12. package/dist/index.js +4 -0
  13. package/{src/types.ts → dist/types.d.ts} +4 -1
  14. package/dist/types.js +1 -0
  15. package/package.json +66 -86
  16. package/scripts/start-cluster.cjs +11 -4
  17. package/scripts/start-cluster.mjs +6 -2
  18. package/dist/commonjs/baseCommand.d.ts +0 -25
  19. package/dist/commonjs/baseCommand.js +0 -62
  20. package/dist/commonjs/commands/start.d.ts +0 -34
  21. package/dist/commonjs/commands/start.js +0 -350
  22. package/dist/commonjs/commands/stop.d.ts +0 -16
  23. package/dist/commonjs/commands/stop.js +0 -95
  24. package/dist/commonjs/helper.d.ts +0 -10
  25. package/dist/commonjs/helper.js +0 -61
  26. package/dist/commonjs/index.d.ts +0 -3
  27. package/dist/commonjs/index.js +0 -26
  28. package/dist/commonjs/package.json +0 -3
  29. package/dist/commonjs/types.d.ts +0 -9
  30. package/dist/commonjs/types.js +0 -3
  31. package/dist/esm/baseCommand.d.ts +0 -25
  32. package/dist/esm/baseCommand.js +0 -55
  33. package/dist/esm/commands/start.d.ts +0 -34
  34. package/dist/esm/commands/start.js +0 -344
  35. package/dist/esm/commands/stop.d.ts +0 -16
  36. package/dist/esm/commands/stop.js +0 -92
  37. package/dist/esm/helper.d.ts +0 -10
  38. package/dist/esm/helper.js +0 -51
  39. package/dist/esm/index.d.ts +0 -3
  40. package/dist/esm/index.js +0 -5
  41. package/dist/esm/package.json +0 -3
  42. package/dist/esm/types.d.ts +0 -9
  43. package/dist/esm/types.js +0 -2
  44. package/dist/package.json +0 -4
  45. package/src/baseCommand.ts +0 -68
  46. package/src/commands/start.ts +0 -384
  47. package/src/commands/stop.ts +0 -105
  48. package/src/helper.ts +0 -62
  49. package/src/index.ts +0 -8
package/package.json CHANGED
@@ -1,103 +1,83 @@
1
1
  {
2
2
  "name": "@eggjs/scripts",
3
- "version": "4.0.0",
4
- "publishConfig": {
5
- "access": "public"
6
- },
3
+ "version": "5.0.0-beta.27",
7
4
  "description": "deploy tool for egg project",
8
- "dependencies": {
9
- "@eggjs/utils": "^4.2.1",
10
- "@oclif/core": "^4.2.0",
11
- "common-bin": "^3.0.1",
12
- "mz": "^2.7.0",
13
- "mz-modules": "^2.1.0",
14
- "node-homedir": "^2.0.0",
15
- "runscript": "^2.0.1",
16
- "source-map-support": "^0.5.21",
17
- "utility": "^2.4.0"
18
- },
19
- "devDependencies": {
20
- "@arethetypeswrong/cli": "^0.17.1",
21
- "@eggjs/bin": "^7.0.1",
22
- "@eggjs/tsconfig": "1",
23
- "@types/mocha": "10",
24
- "@types/node": "22",
25
- "coffee": "^5.5.1",
26
- "egg": "beta",
27
- "eslint": "8",
28
- "eslint-config-egg": "14",
29
- "mm": "^4.0.1",
30
- "rimraf": "6",
31
- "ts-node": "^10.9.2",
32
- "tshy": "3",
33
- "tshy-after": "1",
34
- "typescript": "5",
35
- "urllib": "4"
36
- },
37
- "engines": {
38
- "node": ">=18.19.0"
39
- },
40
- "scripts": {
41
- "lint": "eslint --cache src test --ext .ts",
42
- "pretest": "npm run clean && npm run lint -- --fix && npm run prepublishOnly",
43
- "test": "egg-bin test",
44
- "posttest": "npm run clean",
45
- "preci": "npm run clean && npm run lint && npm run prepublishOnly",
46
- "ci": "egg-bin test",
47
- "postci": "npm run clean",
48
- "clean": "rimraf dist",
49
- "prepublishOnly": "tshy && tshy-after && attw --pack"
5
+ "type": "module",
6
+ "exports": {
7
+ ".": "./dist/index.js",
8
+ "./baseCommand": "./dist/baseCommand.js",
9
+ "./commands/start": "./dist/commands/start.js",
10
+ "./commands/stop": "./dist/commands/stop.js",
11
+ "./helper": "./dist/helper.js",
12
+ "./types": "./dist/types.js",
13
+ "./package.json": "./package.json"
50
14
  },
51
- "bug": {
52
- "url": "https://github.com/eggjs/egg/issues"
15
+ "publishConfig": {
16
+ "access": "public"
53
17
  },
54
- "homepage": "https://github.com/eggjs/scripts",
55
- "repository": {
56
- "type": "git",
57
- "url": "git@github.com:eggjs/scripts.git"
18
+ "bin": {
19
+ "egg-scripts": "./bin/run.js",
20
+ "eggctl": "./bin/run.js"
58
21
  },
59
- "author": "TZ <atian25@qq.com>",
60
- "license": "MIT",
22
+ "files": [
23
+ "bin",
24
+ "dist",
25
+ "scripts"
26
+ ],
61
27
  "oclif": {
62
28
  "bin": "eggctl",
63
- "commands": "./dist/esm/commands",
29
+ "commands": "./dist/commands",
64
30
  "dirname": "eggctl",
65
31
  "topicSeparator": " ",
66
32
  "additionalHelpFlags": [
67
33
  "-h"
68
34
  ]
69
35
  },
70
- "bin": {
71
- "egg-scripts": "./bin/run.js",
72
- "eggctl": "./bin/run.js"
36
+ "license": "MIT",
37
+ "homepage": "https://github.com/eggjs/egg/tree/next/tools/scripts",
38
+ "bugs": {
39
+ "url": "https://github.com/eggjs/egg/issues"
73
40
  },
74
- "type": "module",
75
- "tshy": {
76
- "exports": {
77
- ".": "./src/index.ts",
78
- "./package.json": "./package.json"
79
- }
41
+ "repository": {
42
+ "type": "git",
43
+ "url": "https://github.com/eggjs/egg.git",
44
+ "directory": "tools/scripts"
80
45
  },
81
- "exports": {
82
- ".": {
83
- "import": {
84
- "types": "./dist/esm/index.d.ts",
85
- "default": "./dist/esm/index.js"
86
- },
87
- "require": {
88
- "types": "./dist/commonjs/index.d.ts",
89
- "default": "./dist/commonjs/index.js"
90
- }
91
- },
92
- "./package.json": "./package.json"
46
+ "author": "TZ <atian25@qq.com>",
47
+ "engines": {
48
+ "node": ">= 22.18.0"
93
49
  },
94
- "files": [
95
- "bin",
96
- "dist",
97
- "src",
98
- "scripts"
99
- ],
100
- "types": "./dist/commonjs/index.d.ts",
101
- "main": "./dist/commonjs/index.js",
102
- "module": "./dist/esm/index.js"
103
- }
50
+ "dependencies": {
51
+ "@oclif/core": "^4.2.0",
52
+ "node-homedir": "^2.0.0",
53
+ "runscript": "^2.0.1",
54
+ "source-map-support": "^0.5.21",
55
+ "utility": "^2.5.0",
56
+ "@eggjs/utils": "5.0.0-beta.27"
57
+ },
58
+ "devDependencies": {
59
+ "@types/node": "^24.6.2",
60
+ "coffee": "5",
61
+ "detect-port": "^2.1.0",
62
+ "mm": "^4.0.2",
63
+ "oxlint": "^1.19.0",
64
+ "tsdown": "^0.15.4",
65
+ "typescript": "^5.9.3",
66
+ "urllib": "^4.8.2",
67
+ "vitest": "4.0.0-beta.16",
68
+ "@eggjs/tsconfig": "3.1.0-beta.27",
69
+ "egg": "4.1.0-beta.27"
70
+ },
71
+ "main": "./dist/index.js",
72
+ "module": "./dist/index.js",
73
+ "types": "./dist/index.d.ts",
74
+ "scripts": {
75
+ "build": "tsdown",
76
+ "typecheck": "tsc --noEmit",
77
+ "lint": "oxlint --type-aware",
78
+ "pretest": "pnpm run build",
79
+ "test": "vitest run --bail 1 --no-file-parallelism",
80
+ "cov": "pnpm test --coverage",
81
+ "ci": "pnpm run cov"
82
+ }
83
+ }
@@ -1,15 +1,22 @@
1
- /* eslint-disable @typescript-eslint/no-var-requires */
2
1
  const { debuglog } = require('node:util');
2
+
3
3
  const { importModule } = require('@eggjs/utils');
4
4
 
5
- const debug = debuglog('@eggjs/scripts/scripts/start-cluster');
5
+ const debug = debuglog('egg/scripts/start-cluster/cjs');
6
6
 
7
7
  async function main() {
8
8
  debug('argv: %o', process.argv);
9
9
  const options = JSON.parse(process.argv[2]);
10
10
  debug('start cluster options: %o', options);
11
- const { startCluster } = await importModule(options.framework);
11
+ const exports = await importModule(options.framework);
12
+ let startCluster = exports.startCluster;
13
+ if (typeof startCluster !== 'function') {
14
+ startCluster = exports.default.startCluster;
15
+ }
12
16
  await startCluster(options);
13
17
  }
14
18
 
15
- main();
19
+ main().catch(err => {
20
+ console.error(err);
21
+ process.exit(1);
22
+ });
@@ -1,7 +1,8 @@
1
1
  import { debuglog } from 'node:util';
2
+
2
3
  import { importModule } from '@eggjs/utils';
3
4
 
4
- const debug = debuglog('@eggjs/scripts/scripts/start-cluster');
5
+ const debug = debuglog('egg/scripts/start-cluster/esm');
5
6
 
6
7
  async function main() {
7
8
  debug('argv: %o', process.argv);
@@ -11,4 +12,7 @@ async function main() {
11
12
  await startCluster(options);
12
13
  }
13
14
 
14
- main();
15
+ main().catch(err => {
16
+ console.error(err);
17
+ process.exit(1);
18
+ });
@@ -1,25 +0,0 @@
1
- import { Command, Flags, Interfaces } from '@oclif/core';
2
- import { PackageEgg } from './types.js';
3
- type Flags<T extends typeof Command> = Interfaces.InferredFlags<typeof BaseCommand['baseFlags'] & T['flags']>;
4
- type Args<T extends typeof Command> = Interfaces.InferredArgs<T['args']>;
5
- export declare abstract class BaseCommand<T extends typeof Command> extends Command {
6
- static enableJsonFlag: boolean;
7
- static baseFlags: {};
8
- protected flags: Flags<T>;
9
- protected args: Args<T>;
10
- protected env: {
11
- [x: string]: string | undefined;
12
- TZ?: string;
13
- };
14
- protected pkg: Record<string, any>;
15
- protected isESM: boolean;
16
- protected pkgEgg: PackageEgg;
17
- protected globalExecArgv: string[];
18
- init(): Promise<void>;
19
- protected initBaseInfo(baseDir: string): Promise<void>;
20
- protected catch(err: Error & {
21
- exitCode?: number;
22
- }): Promise<any>;
23
- protected finally(_: Error | undefined): Promise<any>;
24
- }
25
- export {};
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BaseCommand = void 0;
7
- const node_util_1 = require("node:util");
8
- const core_1 = require("@oclif/core");
9
- const utility_1 = require("utility");
10
- const node_path_1 = __importDefault(require("node:path"));
11
- const debug = (0, node_util_1.debuglog)('@eggjs/scripts/baseCommand');
12
- class BaseCommand extends core_1.Command {
13
- // add the --json flag
14
- static enableJsonFlag = false;
15
- // define flags that can be inherited by any command that extends BaseCommand
16
- static baseFlags = {
17
- // 'log-level': Flags.option({
18
- // default: 'info',
19
- // helpGroup: 'GLOBAL',
20
- // options: ['debug', 'warn', 'error', 'info', 'trace'] as const,
21
- // summary: 'Specify level for logging.',
22
- // })(),
23
- };
24
- flags;
25
- args;
26
- env = { ...process.env };
27
- pkg;
28
- isESM;
29
- pkgEgg;
30
- globalExecArgv = [];
31
- async init() {
32
- await super.init();
33
- debug('[init] raw args: %o, NODE_ENV: %o', this.argv, this.env.NODE_ENV);
34
- const { args, flags } = await this.parse({
35
- flags: this.ctor.flags,
36
- baseFlags: super.ctor.baseFlags,
37
- enableJsonFlag: this.ctor.enableJsonFlag,
38
- args: this.ctor.args,
39
- strict: this.ctor.strict,
40
- });
41
- this.flags = flags;
42
- this.args = args;
43
- }
44
- async initBaseInfo(baseDir) {
45
- const pkg = await (0, utility_1.readJSON)(node_path_1.default.join(baseDir, 'package.json'));
46
- this.pkg = pkg;
47
- this.pkgEgg = pkg.egg ?? {};
48
- this.isESM = pkg.type === 'module';
49
- debug('[initBaseInfo] baseDir: %o, pkgEgg: %o, isESM: %o', baseDir, this.pkgEgg, this.isESM);
50
- }
51
- async catch(err) {
52
- // add any custom logic to handle errors from the command
53
- // or simply return the parent class error handling
54
- return super.catch(err);
55
- }
56
- async finally(_) {
57
- // called after run and catch regardless of whether or not the command errored
58
- return super.finally(_);
59
- }
60
- }
61
- exports.BaseCommand = BaseCommand;
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZUNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmFzZUNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseUNBQXFDO0FBQ3JDLHNDQUF5RDtBQUV6RCxxQ0FBbUM7QUFDbkMsMERBQTZCO0FBRTdCLE1BQU0sS0FBSyxHQUFHLElBQUEsb0JBQVEsRUFBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBS3JELE1BQXNCLFdBQXNDLFNBQVEsY0FBTztJQUN6RSxzQkFBc0I7SUFDdEIsTUFBTSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFFOUIsNkVBQTZFO0lBQzdFLE1BQU0sQ0FBQyxTQUFTLEdBQUc7SUFDakIsOEJBQThCO0lBQzlCLHFCQUFxQjtJQUNyQix5QkFBeUI7SUFDekIsbUVBQW1FO0lBQ25FLDJDQUEyQztJQUMzQyxRQUFRO0tBQ1QsQ0FBQztJQUVRLEtBQUssQ0FBWTtJQUNqQixJQUFJLENBQVc7SUFFZixHQUFHLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN6QixHQUFHLENBQXNCO0lBQ3pCLEtBQUssQ0FBVTtJQUNmLE1BQU0sQ0FBYTtJQUNuQixjQUFjLEdBQWEsRUFBRSxDQUFDO0lBRWpDLEtBQUssQ0FBQyxJQUFJO1FBQ2YsTUFBTSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsS0FBSyxDQUFDLG1DQUFtQyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN2QyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO1lBQ3RCLFNBQVMsRUFBRyxLQUFLLENBQUMsSUFBMkIsQ0FBQyxTQUFTO1lBQ3ZELGNBQWMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7WUFDeEMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUNwQixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO1NBQ3pCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBaUIsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQWUsQ0FBQztJQUM5QixDQUFDO0lBRVMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFlO1FBQzFDLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBQSxrQkFBUSxFQUFDLG1CQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO1FBQ25DLEtBQUssQ0FBQyxtREFBbUQsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVTLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBZ0M7UUFDcEQseURBQXlEO1FBQ3pELG1EQUFtRDtRQUNuRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVTLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBb0I7UUFDMUMsOEVBQThFO1FBQzlFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOztBQXRESCxrQ0F1REMifQ==
@@ -1,34 +0,0 @@
1
- import { BaseCommand } from '../baseCommand.js';
2
- export interface FrameworkOptions {
3
- baseDir: string;
4
- framework?: string;
5
- }
6
- export default class Start<T extends typeof Start> extends BaseCommand<T> {
7
- #private;
8
- static description: string;
9
- static examples: string[];
10
- static args: {
11
- baseDir: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
12
- };
13
- static flags: {
14
- title: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
- framework: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
- port: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
- workers: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
- env: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
19
- daemon: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
- stdout: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
- stderr: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
- timeout: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
23
- 'ignore-stderr': import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
- node: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
25
- require: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
- sourcemap: import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
- };
28
- isReady: boolean;
29
- protected getFrameworkPath(options: FrameworkOptions): Promise<string>;
30
- protected getFrameworkName(frameworkPath: string): Promise<string>;
31
- protected getServerBin(): Promise<string>;
32
- run(): Promise<void>;
33
- protected checkStatus(): Promise<void>;
34
- }