/
base-branch.ts
41 lines (35 loc) · 1.34 KB
/
base-branch.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import { Command } from '@contentstack/cli-command';
import { cliux, flags, configHandler, FlagInput } from '@contentstack/cli-utilities';
import { interactive } from '../../../utils';
export default class BranchSetCommand extends Command {
static description = 'Set branch for CLI';
static flags: FlagInput = {
'stack-api-key': flags.string({ char: 'k', description: 'Stack API Key' }),
'base-branch': flags.string({ description: 'Base Branch' }),
};
static examples = [
'$ csdx config:set:base-branch',
'$ csdx config:set:base-branch --stack-api-key <value> --base-branch <value>',
];
async run() {
try {
const { flags: branchSetFlags } = await this.parse(BranchSetCommand);
let apiKey = branchSetFlags['stack-api-key'];
let baseBranch = branchSetFlags['base-branch'];
if (!apiKey) {
apiKey = await interactive.askStackAPIKey();
}
if (!baseBranch) {
baseBranch = await interactive.askBaseBranch();
}
configHandler.set(`baseBranch.${apiKey}`, baseBranch);
cliux.success(`base branch : ${baseBranch}`);
cliux.success(`stack-api-key: ${apiKey}`);
cliux.success(
`Base branch configuration for stack-api-key: ${apiKey} and branch: ${baseBranch} set successfully`,
);
} catch (error) {
cliux.error('error', error);
}
}
}