diff options
author | Chocobozzz <me@florianbigard.com> | 2021-07-05 16:37:50 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2021-07-20 15:27:16 +0200 |
commit | 329619b3453479f76c049816b7403b86e9d45cb5 (patch) | |
tree | e522940946402a4284d356f2cde8e0dcbe29b289 /shared/extra-utils/cli/cli.ts | |
parent | a6a79eae0d8564099b6957e76d7a18528d9ef124 (diff) | |
download | PeerTube-329619b3453479f76c049816b7403b86e9d45cb5.tar.gz PeerTube-329619b3453479f76c049816b7403b86e9d45cb5.tar.zst PeerTube-329619b3453479f76c049816b7403b86e9d45cb5.zip |
Introduce CLI command
Diffstat (limited to 'shared/extra-utils/cli/cli.ts')
-rw-r--r-- | shared/extra-utils/cli/cli.ts | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/shared/extra-utils/cli/cli.ts b/shared/extra-utils/cli/cli.ts index c62e170bb..1bf100869 100644 --- a/shared/extra-utils/cli/cli.ts +++ b/shared/extra-utils/cli/cli.ts | |||
@@ -1,24 +1,27 @@ | |||
1 | import { exec } from 'child_process' | 1 | import { exec } from 'child_process' |
2 | import { AbstractCommand } from '../shared' | ||
2 | 3 | ||
3 | import { ServerInfo } from '../server/servers' | 4 | class CLICommand extends AbstractCommand { |
4 | 5 | ||
5 | function getEnvCli (server?: ServerInfo) { | 6 | static exec (command: string) { |
6 | return `NODE_ENV=test NODE_APP_INSTANCE=${server.internalServerNumber}` | 7 | return new Promise<string>((res, rej) => { |
7 | } | 8 | exec(command, (err, stdout, _stderr) => { |
8 | 9 | if (err) return rej(err) | |
9 | async function execCLI (command: string) { | ||
10 | return new Promise<string>((res, rej) => { | ||
11 | exec(command, (err, stdout, stderr) => { | ||
12 | if (err) return rej(err) | ||
13 | 10 | ||
14 | return res(stdout) | 11 | return res(stdout) |
12 | }) | ||
15 | }) | 13 | }) |
16 | }) | 14 | } |
17 | } | ||
18 | 15 | ||
19 | // --------------------------------------------------------------------------- | 16 | getEnv () { |
17 | return `NODE_ENV=test NODE_APP_INSTANCE=${this.server.internalServerNumber}` | ||
18 | } | ||
19 | |||
20 | async execWithEnv (command: string) { | ||
21 | return CLICommand.exec(`${this.getEnv()} ${command}`) | ||
22 | } | ||
23 | } | ||
20 | 24 | ||
21 | export { | 25 | export { |
22 | execCLI, | 26 | CLICommand |
23 | getEnvCli | ||
24 | } | 27 | } |