@joltdesign/scripts 0.1.0 → 0.2.0

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.
@@ -1,13 +1,4 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import chalk from 'chalk';
1
+ import ansis from 'ansis';
11
2
  import { Option } from 'clipanion';
12
3
  import { ExecaError, execa } from 'execa';
13
4
  import shelljs from 'shelljs';
@@ -23,48 +14,44 @@ export class DockerCommand extends JoltCommand {
23
14
  }
24
15
  }
25
16
  export class DockerBuildCommand extends DockerCommand {
26
- command() {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const { config, context, context: { stdout, stderr }, dev, prod, } = this;
29
- const imageName = yield config.getDockerImageName(dev);
30
- const imageType = dev ? 'dev' : prod ? 'prod' : 'unknown';
31
- const dockerCommand = config.command('docker');
32
- if (!imageName) {
33
- stderr.write(chalk.red('Image name must be configured!\n'));
34
- return 1;
35
- }
36
- if (!which(dockerCommand)) {
37
- stderr.write(chalk.red(`Could not find command ${dockerCommand}!\n`));
38
- return 2;
39
- }
40
- stdout.write(chalk.blue(`🐳 Building image ${imageName} for ${imageType} using ${dockerCommand}...\n`));
41
- const args = yield this.buildArgs();
42
- const command = [dockerCommand, ...args].join(' ');
43
- stdout.write(`Running command: ${command}\n`);
44
- const result = yield execC(dockerCommand, args, { context });
45
- return result.exitCode;
46
- });
17
+ async command() {
18
+ const { config, context, context: { stdout, stderr }, dev, prod, } = this;
19
+ const imageName = await config.getDockerImageName(dev);
20
+ const imageType = dev ? 'dev' : prod ? 'prod' : 'unknown';
21
+ const dockerCommand = config.command('docker');
22
+ if (!imageName) {
23
+ stderr.write(ansis.red('Image name must be configured!\n'));
24
+ return 1;
25
+ }
26
+ if (!which(dockerCommand)) {
27
+ stderr.write(ansis.red(`Could not find command ${dockerCommand}!\n`));
28
+ return 2;
29
+ }
30
+ stdout.write(ansis.blue(`🐳 Building image ${imageName} for ${imageType} using ${dockerCommand}...\n`));
31
+ const args = await this.buildArgs();
32
+ const command = [dockerCommand, ...args].join(' ');
33
+ stdout.write(`Running command: ${command}\n`);
34
+ const result = await execC(dockerCommand, args, { context });
35
+ return result.exitCode;
47
36
  }
48
- buildArgs() {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- const { config, dev } = this;
51
- const imageName = yield config.getDockerImageName(dev);
52
- const platform = config.get('buildPlatform');
53
- const context = config.get('buildContext');
54
- const dockerFile = config.get('dockerFile');
55
- const buildArgs = dev ? '--build-arg=DEVBUILD=1' : '';
56
- return [
57
- 'buildx',
58
- 'build',
59
- platform && `--platform=${platform}`,
60
- dockerFile && `-f ${dockerFile}`,
61
- `-t ${imageName}`,
62
- buildArgs,
63
- context !== null && context !== void 0 ? context : '.',
64
- ]
65
- .filter((x) => !!x)
66
- .map(String);
67
- });
37
+ async buildArgs() {
38
+ const { config, dev } = this;
39
+ const imageName = await config.getDockerImageName(dev);
40
+ const platform = config.get('buildPlatform');
41
+ const context = config.get('buildContext');
42
+ const dockerFile = config.get('dockerFile');
43
+ const buildArgs = dev ? '--build-arg=DEVBUILD=1' : '';
44
+ return [
45
+ 'buildx',
46
+ 'build',
47
+ platform && `--platform=${platform}`,
48
+ dockerFile && `-f ${dockerFile}`,
49
+ `-t ${imageName}`,
50
+ buildArgs,
51
+ context !== null && context !== void 0 ? context : '.',
52
+ ]
53
+ .filter((x) => !!x)
54
+ .map(String);
68
55
  }
69
56
  }
70
57
  DockerBuildCommand.paths = [['docker', 'build']];
@@ -73,78 +60,72 @@ export class DockerLoginCommand extends DockerCommand {
73
60
  super(...arguments);
74
61
  this.requiredCommands = ['aws', 'docker'];
75
62
  }
76
- command() {
77
- return __awaiter(this, void 0, void 0, function* () {
78
- var _a, _b, _c;
79
- const { config, context: { stdout, stderr }, } = this;
80
- // TODO get URL from ecr_repo_url, get region from repo URL
81
- const ecrBaseUrl = (_a = config.get('ecrBaseUrl')) !== null && _a !== void 0 ? _a : (yield config.tfVar('ecr_base_url'));
82
- const region = (_c = (_b = config.get('awsRegion')) !== null && _b !== void 0 ? _b : (yield config.tfVar('region'))) !== null && _c !== void 0 ? _c : config.awsRegion();
83
- stdout.write(chalk.blue(`🐳 Logging in to ECR repository ${ecrBaseUrl} on ${region}...\n`));
84
- try {
85
- const result = yield execa(config.command('aws'), ['ecr', 'get-login-password', '--region', region]).pipe(config.command('docker'), ['login', '--username', 'AWS', '--password-stdin', ecrBaseUrl], { stdout, stderr });
86
- return result.exitCode;
87
- }
88
- catch (e) {
89
- if (e instanceof ExecaError) {
90
- stderr.write(chalk.red(`Failed to log in! Reason: ${e.message}\n`));
91
- return e.exitCode;
92
- }
93
- throw e;
63
+ async command() {
64
+ var _a, _b, _c;
65
+ const { config, context: { stdout, stderr }, } = this;
66
+ // TODO get URL from ecr_repo_url, get region from repo URL
67
+ const ecrBaseUrl = (_a = config.get('ecrBaseUrl')) !== null && _a !== void 0 ? _a : (await config.tfVar('ecr_base_url'));
68
+ const region = (_c = (_b = config.get('awsRegion')) !== null && _b !== void 0 ? _b : (await config.tfVar('region'))) !== null && _c !== void 0 ? _c : config.awsRegion();
69
+ stdout.write(ansis.blue(`🐳 Logging in to ECR repository ${ecrBaseUrl} on ${region}...\n`));
70
+ try {
71
+ const result = await execa(config.command('aws'), ['ecr', 'get-login-password', '--region', region]).pipe(config.command('docker'), ['login', '--username', 'AWS', '--password-stdin', ecrBaseUrl], { stdout, stderr });
72
+ return result.exitCode;
73
+ }
74
+ catch (e) {
75
+ if (e instanceof ExecaError) {
76
+ stderr.write(ansis.red(`Failed to log in! Reason: ${e.message}\n`));
77
+ return e.exitCode;
94
78
  }
95
- });
79
+ throw e;
80
+ }
96
81
  }
97
82
  }
98
83
  DockerLoginCommand.paths = [['docker', 'login']];
99
84
  export class DockerTagCommand extends DockerCommand {
100
- command() {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- const { config, dev, context, context: { stdout, stderr }, } = this;
103
- const dockerCommand = config.command('docker');
104
- const imageName = yield config.getDockerImageName(dev);
105
- const remoteRepo = yield config.getRemoteRepo(dev);
106
- const localTag = 'latest';
107
- const remoteTag = 'latest';
108
- const args = ['tag', `${imageName}:${localTag}`, `${remoteRepo}:${remoteTag}`];
109
- if (!imageName) {
110
- stderr.write(chalk.red('Image name must be configured!\n'));
111
- return 1;
112
- }
113
- if (!which(dockerCommand)) {
114
- stderr.write(chalk.red(`Could not find command ${dockerCommand}!\n`));
115
- return 2;
116
- }
117
- stdout.write(chalk.blue(`🐳 Tagging image ${imageName}:${localTag} as ${remoteRepo}:${remoteTag}...\n`));
118
- // const command = [dockerCommand, ...args].join(' ')
119
- // stdout.write(`Running command: ${command}\n`)
120
- const result = yield execC(dockerCommand, args, { context });
121
- return result.exitCode;
122
- });
85
+ async command() {
86
+ const { config, dev, context, context: { stdout, stderr }, } = this;
87
+ const dockerCommand = config.command('docker');
88
+ const imageName = await config.getDockerImageName(dev);
89
+ const remoteRepo = await config.getRemoteRepo(dev);
90
+ const localTag = 'latest';
91
+ const remoteTag = 'latest';
92
+ const args = ['tag', `${imageName}:${localTag}`, `${remoteRepo}:${remoteTag}`];
93
+ if (!imageName) {
94
+ stderr.write(ansis.red('Image name must be configured!\n'));
95
+ return 1;
96
+ }
97
+ if (!which(dockerCommand)) {
98
+ stderr.write(ansis.red(`Could not find command ${dockerCommand}!\n`));
99
+ return 2;
100
+ }
101
+ stdout.write(ansis.blue(`🐳 Tagging image ${imageName}:${localTag} as ${remoteRepo}:${remoteTag}...\n`));
102
+ // const command = [dockerCommand, ...args].join(' ')
103
+ // stdout.write(`Running command: ${command}\n`)
104
+ const result = await execC(dockerCommand, args, { context });
105
+ return result.exitCode;
123
106
  }
124
107
  }
125
108
  DockerTagCommand.paths = [['docker', 'tag']];
126
109
  export class DockerPushCommand extends DockerCommand {
127
- command() {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- const { config, dev, context, context: { stdout, stderr }, } = this;
130
- const dockerCommand = config.command('docker');
131
- const remoteRepo = yield config.getRemoteRepo(dev);
132
- const remoteTag = 'latest';
133
- const args = ['push', `${remoteRepo}:${remoteTag}`];
134
- if (!remoteRepo) {
135
- stderr.write(chalk.red('Remote repo must be configured!\n'));
136
- return 1;
137
- }
138
- if (!which(dockerCommand)) {
139
- stderr.write(chalk.red(`Could not find command ${dockerCommand}!\n`));
140
- return 2;
141
- }
142
- stdout.write(chalk.blue(`🐳 Pushing image ${remoteRepo}:${remoteTag}...\n`));
143
- // const command = [dockerCommand, ...args].join(' ')
144
- // stdout.write(`Running command: ${command}\n`)
145
- const result = yield execC(dockerCommand, args, { context });
146
- return result.exitCode;
147
- });
110
+ async command() {
111
+ const { config, dev, context, context: { stdout, stderr }, } = this;
112
+ const dockerCommand = config.command('docker');
113
+ const remoteRepo = await config.getRemoteRepo(dev);
114
+ const remoteTag = 'latest';
115
+ const args = ['push', `${remoteRepo}:${remoteTag}`];
116
+ if (!remoteRepo) {
117
+ stderr.write(ansis.red('Remote repo must be configured!\n'));
118
+ return 1;
119
+ }
120
+ if (!which(dockerCommand)) {
121
+ stderr.write(ansis.red(`Could not find command ${dockerCommand}!\n`));
122
+ return 2;
123
+ }
124
+ stdout.write(ansis.blue(`🐳 Pushing image ${remoteRepo}:${remoteTag}...\n`));
125
+ // const command = [dockerCommand, ...args].join(' ')
126
+ // stdout.write(`Running command: ${command}\n`)
127
+ const result = await execC(dockerCommand, args, { context });
128
+ return result.exitCode;
148
129
  }
149
130
  }
150
131
  DockerPushCommand.paths = [['docker', 'push']];
@@ -1 +1 @@
1
- {"version":3,"file":"Docker.js","sourceRoot":"","sources":["../../src/Command/Docker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Docker.js","sourceRoot":"","sources":["../../src/Command/Docker.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,4 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import chalk from 'chalk';
1
+ import ansis from 'ansis';
11
2
  import { Command } from 'clipanion';
12
3
  import shelljs from 'shelljs';
13
4
  import getConfig from '../Config.js';
@@ -15,38 +6,36 @@ const { which } = shelljs;
15
6
  export default class JoltCommand extends Command {
16
7
  constructor() {
17
8
  super(...arguments);
18
- this.logo = chalk.magentaBright('⚡');
9
+ this.logo = ansis.magentaBright('⚡');
19
10
  this.requiredCommands = [];
20
11
  }
21
12
  getHeader(suffix = '') {
22
- const header = chalk.whiteBright(`${this.logo} ${this.cli.binaryLabel}`);
13
+ const header = ansis.whiteBright(`${this.logo} ${this.cli.binaryLabel}`);
23
14
  return [header, suffix, '\n\n'].filter((x) => !!x).join(' ');
24
15
  }
25
- execute() {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- const { stderr } = this.context;
28
- const config = yield getConfig();
29
- this.config = config;
30
- if (this.requiredCommands && !process.env.JOLT_IGNORE_REQUIRED_COMMANDS) {
31
- const missingCommands = [];
32
- for (const baseCommand of this.requiredCommands) {
33
- const realCommand = config.command(baseCommand);
34
- if (!which(realCommand)) {
35
- missingCommands.push(realCommand);
36
- }
16
+ async execute() {
17
+ const { stderr } = this.context;
18
+ const config = await getConfig();
19
+ this.config = config;
20
+ if (this.requiredCommands && !process.env.JOLT_IGNORE_REQUIRED_COMMANDS) {
21
+ const missingCommands = [];
22
+ for (const baseCommand of this.requiredCommands) {
23
+ const realCommand = config.command(baseCommand);
24
+ if (!which(realCommand)) {
25
+ missingCommands.push(realCommand);
37
26
  }
38
- if (missingCommands.length > 0) {
39
- stderr.write(this.getHeader());
40
- stderr.write(chalk.red('Missing the following commands:\n'));
41
- for (const missingCommand of missingCommands) {
42
- stderr.write(chalk.red(`- ${missingCommand}\n`));
43
- }
44
- stderr.write('\n\nSee `jolt config` for more information.\n');
45
- return 4;
27
+ }
28
+ if (missingCommands.length > 0) {
29
+ stderr.write(this.getHeader());
30
+ stderr.write(ansis.red('Missing the following commands:\n'));
31
+ for (const missingCommand of missingCommands) {
32
+ stderr.write(ansis.red(`- ${missingCommand}\n`));
46
33
  }
34
+ stderr.write('\n\nSee `jolt config` for more information.\n');
35
+ return 4;
47
36
  }
48
- return yield this.command();
49
- });
37
+ }
38
+ return await this.command();
50
39
  }
51
40
  }
52
41
  //# sourceMappingURL=JoltCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JoltCommand.js","sourceRoot":"","sources":["../../src/Command/JoltCommand.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,SAAS,MAAM,cAAc,CAAA;AACpC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;AAEzB,MAAM,CAAC,OAAO,OAAgB,WAAY,SAAQ,OAAO;IAAzD;;QACE,SAAI,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAE/B,qBAAgB,GAAa,EAAE,CAAA;IAwCjC,CAAC;IApCC,SAAS,CAAC,MAAM,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;QACxE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9D,CAAC;IAEK,OAAO;;YACX,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;YAC/B,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;YAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;YAEpB,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC;gBACxE,MAAM,eAAe,GAAG,EAAE,CAAA;gBAE1B,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAChD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;oBAE/C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;wBACxB,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBACnC,CAAC;gBACH,CAAC;gBAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;oBAC9B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBAE5D,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;wBAC7C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,cAAc,IAAI,CAAC,CAAC,CAAA;oBAClD,CAAC;oBAED,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;oBAC7D,OAAO,CAAC,CAAA;gBACV,CAAC;YACH,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QAC7B,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"JoltCommand.js","sourceRoot":"","sources":["../../src/Command/JoltCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,SAAS,MAAM,cAAc,CAAA;AACpC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;AAEzB,MAAM,CAAC,OAAO,OAAgB,WAAY,SAAQ,OAAO;IAAzD;;QACE,SAAI,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAE/B,qBAAgB,GAAa,EAAE,CAAA;IAwCjC,CAAC;IApCC,SAAS,CAAC,MAAM,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;QACxE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9D,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;QAC/B,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC;YACxE,MAAM,eAAe,GAAG,EAAE,CAAA;YAE1B,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAChD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;gBAE/C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;oBACxB,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;YAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;gBAC9B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAA;gBAE5D,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;oBAC7C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,cAAc,IAAI,CAAC,CAAC,CAAA;gBAClD,CAAC;gBAED,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;gBAC7D,OAAO,CAAC,CAAA;YACV,CAAC;QACH,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;IAC7B,CAAC;CACF"}
package/bin/Command/WP.js CHANGED
@@ -1,14 +1,5 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { userInfo } from 'node:os';
11
- import chalk from 'chalk';
2
+ import ansis from 'ansis';
12
3
  import { Option } from 'clipanion';
13
4
  import { execC } from '../utils.js';
14
5
  import JoltCommand from './JoltCommand.js';
@@ -17,62 +8,49 @@ export class WPCommand extends JoltCommand {
17
8
  super(...arguments);
18
9
  this.wpArgs = Option.Proxy();
19
10
  }
20
- command() {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const { config, context, context: { stderr }, } = this;
23
- const containerName = yield this.getContainerName();
24
- if (!containerName) {
25
- stderr.write(chalk.red(`Couldn't find a WP CLI container. Set it with the 'wpCliContainer' config key.\n`));
26
- return 1;
27
- }
28
- const { uid, gid } = userInfo();
29
- // On Windows, uid is -1 so we shouldn't try to set the user
30
- const userArg = uid !== undefined && uid !== -1 && `--user='${uid}:${gid}'`;
31
- const profile = yield this.getContainerProfile(containerName);
32
- const args = [
33
- profile ? `--profile=${profile}` : '',
34
- 'run',
35
- '--rm',
36
- userArg || '',
37
- containerName,
38
- 'wp',
39
- ...this.wpArgs,
40
- ];
41
- const result = yield execC(config.command('docker compose'), args, { context, reject: false });
42
- return result.exitCode;
43
- });
11
+ async command() {
12
+ const { config, context, context: { stderr }, } = this;
13
+ const containerName = await this.getContainerName();
14
+ if (!containerName) {
15
+ stderr.write(ansis.red(`Couldn't find a WP CLI container. Set it with the 'wpCliContainer' config key.\n`));
16
+ return 1;
17
+ }
18
+ const { uid, gid } = userInfo();
19
+ // On Windows, uid is -1 so we shouldn't try to set the user
20
+ const userArg = uid !== undefined && uid !== -1 && `--user='${uid}:${gid}'`;
21
+ const profile = await this.getContainerProfile(containerName);
22
+ const [composeCommand, args] = config.getComposeCommand();
23
+ args.push(profile ? `--profile=${profile}` : '', 'run', '--rm', userArg || '', containerName, 'wp', ...this.wpArgs);
24
+ const result = await execC(composeCommand, args, { context, reject: false });
25
+ return result.exitCode;
44
26
  }
45
- getContainerName() {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- var _a;
48
- const { config } = this;
49
- if (config.has('wpCliContainer')) {
50
- return config.get('wpCliContainer');
51
- }
52
- const composeConfig = yield config.getComposeConfig();
53
- if (!composeConfig) {
54
- return undefined;
55
- }
56
- for (const [key, service] of Object.entries(composeConfig.services)) {
57
- if ((_a = service.image) === null || _a === void 0 ? void 0 : _a.match(/\bwp[_-]cli\b/i)) {
58
- return key;
59
- }
27
+ async getContainerName() {
28
+ var _a;
29
+ const { config } = this;
30
+ if (config.has('wpCliContainer')) {
31
+ return config.get('wpCliContainer');
32
+ }
33
+ const composeConfig = await config.getComposeConfig();
34
+ if (!composeConfig) {
35
+ return undefined;
36
+ }
37
+ for (const [key, service] of Object.entries(composeConfig.services)) {
38
+ if ((_a = service.image) === null || _a === void 0 ? void 0 : _a.match(/\bwp[_-]cli\b/i)) {
39
+ return key;
60
40
  }
61
- });
41
+ }
62
42
  }
63
- getContainerProfile(container) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const { config } = this;
66
- if (config.has('wpCliContainerProfile')) {
67
- return config.get('wpCliContainerProfile');
68
- }
69
- const composeConfig = yield config.getComposeConfig();
70
- if (!composeConfig) {
71
- return undefined;
72
- }
73
- const service = composeConfig.services[container];
74
- return service.profiles ? service.profiles[0] : undefined;
75
- });
43
+ async getContainerProfile(container) {
44
+ const { config } = this;
45
+ if (config.has('wpCliContainerProfile')) {
46
+ return config.get('wpCliContainerProfile');
47
+ }
48
+ const composeConfig = await config.getComposeConfig();
49
+ if (!composeConfig) {
50
+ return undefined;
51
+ }
52
+ const service = composeConfig.services[container];
53
+ return service.profiles ? service.profiles[0] : undefined;
76
54
  }
77
55
  }
78
56
  WPCommand.paths = [['wp'], ['wp-cli']];
@@ -1 +1 @@
1
- {"version":3,"file":"WP.js","sourceRoot":"","sources":["../../src/Command/WP.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WP.js","sourceRoot":"","sources":["../../src/Command/WP.ts"],"names":[],"mappings":"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"}