sfdx-hardis 6.9.1-alpha202510261312.0 → 6.9.1-alpha202510261658.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.
@@ -0,0 +1,17 @@
1
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
2
+ export type ActionResult = {
3
+ statusCode: 'success' | 'failed' | 'skipped';
4
+ output?: string;
5
+ skippedReason?: string;
6
+ };
7
+ export declare abstract class ActionsProviderRoot {
8
+ getLabel(): string;
9
+ /**
10
+ * Perform pre-run validations for the given command.
11
+ * Return null when the command is valid and may proceed.
12
+ * Return an ActionResult when the command must be short-circuited
13
+ * (for example: missing parameters -> failed, or manual -> skipped).
14
+ */
15
+ checkValidityIssues(cmd: PrePostCommand): Promise<ActionResult | null>;
16
+ run(cmd: PrePostCommand): Promise<ActionResult>;
17
+ }
@@ -0,0 +1,24 @@
1
+ import { SfError } from '@salesforce/core';
2
+ import c from 'chalk';
3
+ import { uxLog } from '../utils/index.js';
4
+ export class ActionsProviderRoot {
5
+ getLabel() {
6
+ throw new SfError('getLabel should be implemented on this call');
7
+ }
8
+ /**
9
+ * Perform pre-run validations for the given command.
10
+ * Return null when the command is valid and may proceed.
11
+ * Return an ActionResult when the command must be short-circuited
12
+ * (for example: missing parameters -> failed, or manual -> skipped).
13
+ */
14
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
15
+ async checkValidityIssues(cmd) {
16
+ return null;
17
+ }
18
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
19
+ async run(cmd) {
20
+ uxLog('warning', this, c.yellow(`run is not implemented on ${this.getLabel()}`));
21
+ return { statusCode: 'skipped', skippedReason: 'Not implemented' };
22
+ }
23
+ }
24
+ //# sourceMappingURL=actionsProviderRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionsProviderRoot.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/actionsProviderRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAS1C,MAAM,OAAgB,mBAAmB;IAChC,QAAQ;QACb,MAAM,IAAI,OAAO,CAAC,6CAA6C,CAAC,CAAC;IACnE,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IACtD,KAAK,CAAC,mBAAmB,CAAC,GAAmB;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,6BAA6B,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACjF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACrE,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ActionsProviderRoot, ActionResult } from './actionsProviderRoot.js';
2
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
3
+ export declare class ApexAction extends ActionsProviderRoot {
4
+ getLabel(): string;
5
+ checkValidity(cmd: PrePostCommand): Promise<ActionResult | null>;
6
+ run(cmd: PrePostCommand): Promise<ActionResult>;
7
+ }
@@ -0,0 +1,35 @@
1
+ import { ActionsProviderRoot } from './actionsProviderRoot.js';
2
+ import { execCommand, uxLog } from '../utils/index.js';
3
+ import fs from 'fs-extra';
4
+ import c from 'chalk';
5
+ export class ApexAction extends ActionsProviderRoot {
6
+ getLabel() {
7
+ return 'ApexAction';
8
+ }
9
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
10
+ async checkValidity(cmd) {
11
+ const apexScript = cmd.parameters?.apexScript || '';
12
+ if (!apexScript) {
13
+ uxLog('error', this, c.red(`[DeploymentActions] No apexScript parameter provided for action [${cmd.id}]: ${cmd.label}`));
14
+ return { statusCode: 'failed', skippedReason: 'No apexScript parameter provided' };
15
+ }
16
+ if (!fs.existsSync(apexScript)) {
17
+ uxLog('error', this, c.red(`[DeploymentActions] Apex script file ${apexScript} does not exist for action [${cmd.id}]: ${cmd.label}`));
18
+ return { statusCode: 'failed', skippedReason: `Apex script file ${apexScript} does not exist` };
19
+ }
20
+ return null;
21
+ }
22
+ async run(cmd) {
23
+ const validity = await this.checkValidityIssues(cmd);
24
+ if (validity)
25
+ return validity;
26
+ const apexScript = cmd.parameters?.apexScript || '';
27
+ const apexCommand = `sf apex run --file ${apexScript}`;
28
+ const res = await execCommand(apexCommand, null, { fail: false, output: true });
29
+ if (res.status === 0) {
30
+ return { statusCode: 'success', output: (res.stdout || '') + '\n' + (res.stderr || '') };
31
+ }
32
+ return { statusCode: 'failed', output: (res.stdout || '') + '\n' + (res.stderr || '') };
33
+ }
34
+ }
35
+ //# sourceMappingURL=apexAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apexAction.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/apexAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,CAAC,MAAM,OAAO,CAAC;AAEtB,MAAM,OAAO,UAAW,SAAQ,mBAAmB;IAC1C,QAAQ;QACb,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,aAAa,CAAC,GAAmB;QAC5C,MAAM,UAAU,GAAI,GAAG,CAAC,UAAU,EAAE,UAAqB,IAAI,EAAE,CAAC;QAChE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,oEAAoE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACzH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,kCAAkC,EAAE,CAAC;QACrF,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,wCAAwC,UAAU,+BAA+B,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACtI,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,oBAAoB,UAAU,iBAAiB,EAAE,CAAC;QAClG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,UAAU,GAAI,GAAG,CAAC,UAAU,EAAE,UAAqB,IAAI,EAAE,CAAC;QAChE,MAAM,WAAW,GAAG,sBAAsB,UAAU,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ActionsProviderRoot, ActionResult } from './actionsProviderRoot.js';
2
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
3
+ export declare class CommandAction extends ActionsProviderRoot {
4
+ getLabel(): string;
5
+ checkValidityIssues(cmd: PrePostCommand): Promise<ActionResult | null>;
6
+ run(cmd: PrePostCommand): Promise<ActionResult>;
7
+ }
@@ -0,0 +1,28 @@
1
+ import { ActionsProviderRoot } from './actionsProviderRoot.js';
2
+ import { execCommand, uxLog } from '../utils/index.js';
3
+ import c from 'chalk';
4
+ export class CommandAction extends ActionsProviderRoot {
5
+ getLabel() {
6
+ return 'CommandAction';
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ async checkValidityIssues(cmd) {
10
+ const command = cmd.command;
11
+ if (!command) {
12
+ uxLog('error', this, c.red(`[DeploymentActions] No command provided for action [${cmd.id}]: ${cmd.label}`));
13
+ return { statusCode: 'failed', skippedReason: 'No command provided' };
14
+ }
15
+ return null;
16
+ }
17
+ async run(cmd) {
18
+ const validity = await this.checkValidityIssues(cmd);
19
+ if (validity)
20
+ return validity;
21
+ const res = await execCommand(cmd.command, null, { fail: false, output: true });
22
+ if (res.status === 0) {
23
+ return { statusCode: 'success', output: (res.stdout || '') + '\n' + (res.stderr || '') };
24
+ }
25
+ return { statusCode: 'failed', output: (res.stdout || '') + '\n' + (res.stderr || '') };
26
+ }
27
+ }
28
+ //# sourceMappingURL=commandAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandAction.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/commandAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,CAAC,MAAM,OAAO,CAAC;AAEtB,MAAM,OAAO,aAAc,SAAQ,mBAAmB;IAC7C,QAAQ;QACb,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,mBAAmB,CAAC,GAAmB;QAClD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,uDAAuD,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC5G,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAkB,CAAC;QACxF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ActionsProviderRoot, ActionResult } from './actionsProviderRoot.js';
2
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
3
+ export declare class DataAction extends ActionsProviderRoot {
4
+ getLabel(): string;
5
+ checkValidityIssues(cmd: PrePostCommand): Promise<ActionResult | null>;
6
+ run(cmd: PrePostCommand): Promise<ActionResult>;
7
+ }
@@ -0,0 +1,30 @@
1
+ import { ActionsProviderRoot } from './actionsProviderRoot.js';
2
+ import { execCommand, uxLog } from '../utils/index.js';
3
+ import c from 'chalk';
4
+ export class DataAction extends ActionsProviderRoot {
5
+ getLabel() {
6
+ return 'DataAction';
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ async checkValidityIssues(cmd) {
10
+ const sfdmuProject = cmd.parameters?.sfdmuProject || '';
11
+ if (!sfdmuProject) {
12
+ uxLog('error', this, c.red(`[DeploymentActions] No sfdmuProject parameter provided for action [${cmd.id}]: ${cmd.label}`));
13
+ return { statusCode: 'failed', skippedReason: 'No sfdmuProject parameter provided' };
14
+ }
15
+ return null;
16
+ }
17
+ async run(cmd) {
18
+ const validity = await this.checkValidityIssues(cmd);
19
+ if (validity)
20
+ return validity;
21
+ const sfdmuProject = cmd.parameters?.sfdmuProject || '';
22
+ const dataCommand = `sf sfdmu run -p ${sfdmuProject}`;
23
+ const res = await execCommand(dataCommand, null, { fail: false, output: true });
24
+ if (res.status === 0) {
25
+ return { statusCode: 'success', output: (res.stdout || '') + '\n' + (res.stderr || '') };
26
+ }
27
+ return { statusCode: 'failed', output: (res.stdout || '') + '\n' + (res.stderr || '') };
28
+ }
29
+ }
30
+ //# sourceMappingURL=dataAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataAction.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/dataAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,CAAC,MAAM,OAAO,CAAC;AAEtB,MAAM,OAAO,UAAW,SAAQ,mBAAmB;IAC1C,QAAQ;QACb,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,mBAAmB,CAAC,GAAmB;QAClD,MAAM,YAAY,GAAI,GAAG,CAAC,UAAU,EAAE,YAAuB,IAAI,EAAE,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,sEAAsE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3H,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,oCAAoC,EAAE,CAAC;QACvF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,YAAY,GAAI,GAAG,CAAC,UAAU,EAAE,YAAuB,IAAI,EAAE,CAAC;QACpE,MAAM,WAAW,GAAG,mBAAmB,YAAY,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ActionsProviderRoot, ActionResult } from './actionsProviderRoot.js';
2
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
3
+ export declare class ManualAction extends ActionsProviderRoot {
4
+ getLabel(): string;
5
+ checkValidityIssues(cmd: PrePostCommand): Promise<ActionResult | null>;
6
+ run(cmd: PrePostCommand): Promise<ActionResult>;
7
+ }
@@ -0,0 +1,26 @@
1
+ import { ActionsProviderRoot } from './actionsProviderRoot.js';
2
+ import { uxLog } from '../utils/index.js';
3
+ import c from 'chalk';
4
+ export class ManualAction extends ActionsProviderRoot {
5
+ getLabel() {
6
+ return 'ManualAction';
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ async checkValidityIssues(cmd) {
10
+ const instructions = cmd.parameters?.instructions || '';
11
+ if (!instructions) {
12
+ uxLog('warning', this, c.yellow(`[DeploymentActions] No instructions for manual action [${cmd.id}]: ${cmd.label}`));
13
+ return { statusCode: 'skipped', skippedReason: 'No instructions provided' };
14
+ }
15
+ return null;
16
+ }
17
+ async run(cmd) {
18
+ const validity = await this.checkValidityIssues(cmd);
19
+ if (validity)
20
+ return validity;
21
+ const instructions = cmd.parameters?.instructions || '';
22
+ // Manual actions are not executed automatically. We just record the instructions.
23
+ return { statusCode: 'skipped', skippedReason: 'Manual action - see output for instructions', output: instructions };
24
+ }
25
+ }
26
+ //# sourceMappingURL=manualAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manualAction.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/manualAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,CAAC,MAAM,OAAO,CAAC;AAEtB,MAAM,OAAO,YAAa,SAAQ,mBAAmB;IAC5C,QAAQ;QACb,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,mBAAmB,CAAC,GAAmB;QAClD,MAAM,YAAY,GAAI,GAAG,CAAC,UAAU,EAAE,YAAuB,IAAI,EAAE,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,0DAA0D,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACpH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,0BAA0B,EAAE,CAAC;QAC9E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,YAAY,GAAI,GAAG,CAAC,UAAU,EAAE,YAAuB,IAAI,EAAE,CAAC;QACpE,kFAAkF;QAClF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,6CAA6C,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IACvH,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ActionsProviderRoot, ActionResult } from './actionsProviderRoot.js';
2
+ import { PrePostCommand } from '../utils/prePostCommandUtils.js';
3
+ export declare class PublishCommunityAction extends ActionsProviderRoot {
4
+ getLabel(): string;
5
+ checkValidityIssues(cmd: PrePostCommand): Promise<ActionResult | null>;
6
+ run(cmd: PrePostCommand): Promise<ActionResult>;
7
+ }
@@ -0,0 +1,30 @@
1
+ import { ActionsProviderRoot } from './actionsProviderRoot.js';
2
+ import { execCommand, uxLog } from '../utils/index.js';
3
+ import c from 'chalk';
4
+ export class PublishCommunityAction extends ActionsProviderRoot {
5
+ getLabel() {
6
+ return 'PublishCommunityAction';
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ async checkValidityIssues(cmd) {
10
+ const communityName = cmd.parameters?.communityName || '';
11
+ if (!communityName) {
12
+ uxLog('error', this, c.red(`[DeploymentActions] No communityName parameter provided for action [${cmd.id}]: ${cmd.label}`));
13
+ return { statusCode: 'failed', skippedReason: 'No communityName parameter provided' };
14
+ }
15
+ return null;
16
+ }
17
+ async run(cmd) {
18
+ const validity = await this.checkValidityIssues(cmd);
19
+ if (validity)
20
+ return validity;
21
+ const communityName = cmd.parameters?.communityName || '';
22
+ const publishCmd = `sf community publish -n "${communityName}"`;
23
+ const res = await execCommand(publishCmd, null, { fail: false, output: true });
24
+ if (res.status === 0) {
25
+ return { statusCode: 'success', output: (res.stdout || '') + '\n' + (res.stderr || '') };
26
+ }
27
+ return { statusCode: 'failed', output: (res.stdout || '') + '\n' + (res.stderr || '') };
28
+ }
29
+ }
30
+ //# sourceMappingURL=publishCommunityAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishCommunityAction.js","sourceRoot":"","sources":["../../../src/common/actionsProvider/publishCommunityAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,CAAC,MAAM,OAAO,CAAC;AAEtB,MAAM,OAAO,sBAAuB,SAAQ,mBAAmB;IACtD,QAAQ;QACb,OAAO,wBAAwB,CAAC;IAClC,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,mBAAmB,CAAC,GAAmB;QAClD,MAAM,aAAa,GAAI,GAAG,CAAC,UAAU,EAAE,aAAwB,IAAI,EAAE,CAAC;QACtE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,uEAAuE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC5H,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,qCAAqC,EAAE,CAAC;QACxF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,aAAa,GAAI,GAAG,CAAC,UAAU,EAAE,aAAwB,IAAI,EAAE,CAAC;QACtE,MAAM,UAAU,GAAG,4BAA4B,aAAa,GAAG,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;CACF"}
@@ -4,11 +4,16 @@ import fs from 'fs-extra';
4
4
  import yaml from 'js-yaml';
5
5
  import * as path from 'path';
6
6
  import { getConfig } from '../../config/index.js';
7
- import { execCommand, uxLog } from './index.js';
7
+ import { uxLog } from './index.js';
8
+ import { CommandAction } from '../actionsProvider/commandAction.js';
9
+ import { ApexAction } from '../actionsProvider/apexAction.js';
10
+ import { DataAction } from '../actionsProvider/dataAction.js';
11
+ import { PublishCommunityAction } from '../actionsProvider/publishCommunityAction.js';
12
+ import { ManualAction } from '../actionsProvider/manualAction.js';
8
13
  import { GitProvider } from '../gitProvider/index.js';
9
14
  import { checkSfdxHardisTraceAvailable, listMajorOrgs } from './orgConfigUtils.js';
10
15
  import { soqlQuery } from './apiUtils.js';
11
- import { findDataWorkspaceByName, importData } from './dataUtils.js';
16
+ // data import moved to DataAction class in actionsProvider
12
17
  import { getPullRequestData, setPullRequestData } from './gitUtils.js';
13
18
  export async function executePrePostCommands(property, options) {
14
19
  const actionLabel = property === 'commandsPreDeploy' ? 'Pre-deployment actions' : 'Post-deployment actions';
@@ -185,21 +190,23 @@ Example: .sfdx-hardis.123.yml`;
185
190
  }
186
191
  }
187
192
  async function executeAction(cmd) {
193
+ // Use ActionsProvider classes to execute actions
194
+ let actionInstance = null;
188
195
  switch (cmd.type || 'command') {
189
196
  case 'command':
190
- await executeActionCommand(cmd);
197
+ actionInstance = new CommandAction();
191
198
  break;
192
199
  case 'apex':
193
- await executeActionApex(cmd);
200
+ actionInstance = new ApexAction();
194
201
  break;
195
202
  case 'data':
196
- await executeActionData(cmd);
203
+ actionInstance = new DataAction();
197
204
  break;
198
205
  case 'publish-community':
199
- await executeActionPublishCommunity(cmd);
206
+ actionInstance = new PublishCommunityAction();
200
207
  break;
201
208
  case 'manual':
202
- await executeActionManual(cmd);
209
+ actionInstance = new ManualAction();
203
210
  break;
204
211
  default:
205
212
  uxLog("error", this, c.yellow(`[DeploymentActions] Action type [${cmd.type}] is not yet implemented for action [${cmd.id}]: ${cmd.label}`));
@@ -207,151 +214,24 @@ async function executeAction(cmd) {
207
214
  statusCode: "failed",
208
215
  skippedReason: `Action type [${cmd.type}] is not implemented`
209
216
  };
210
- break;
211
- }
212
- }
213
- /* jscpd:ignore-start */
214
- async function executeActionCommand(cmd) {
215
- const command = cmd.command;
216
- if (!command) {
217
- uxLog("error", this, c.red(`[DeploymentActions] No command provided for action [${cmd.id}]: ${cmd.label}`));
218
- cmd.result = {
219
- statusCode: "failed",
220
- skippedReason: "No command provided"
221
- };
222
- return;
217
+ return;
223
218
  }
224
- const commandRes = await execCommand(cmd.command, this, { fail: false, output: true });
225
- if (commandRes.status === 0) {
226
- uxLog("success", this, c.green(`[DeploymentActions] Action [${cmd.id}] executed successfully`));
227
- cmd.result = {
228
- statusCode: "success",
229
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
230
- };
231
- }
232
- else {
233
- uxLog("error", this, c.red(`[DeploymentActions] Action [${cmd.id}] failed with status code ${commandRes.status}`));
234
- cmd.result = {
235
- statusCode: "failed",
236
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
237
- };
238
- }
239
- }
240
- async function executeActionApex(cmd) {
241
- const apexScript = cmd.parameters?.apexScript || '';
242
- if (!apexScript) {
243
- uxLog("error", this, c.red(`[DeploymentActions] No apexScript parameter provided for action [${cmd.id}]: ${cmd.label}`));
244
- cmd.result = {
245
- statusCode: "failed",
246
- skippedReason: "No apexScript parameter provided"
247
- };
248
- return;
249
- }
250
- if (!fs.existsSync(apexScript)) {
251
- uxLog("error", this, c.red(`[DeploymentActions] Apex script file ${apexScript} does not exist for action [${cmd.id}]: ${cmd.label}`));
252
- cmd.result = {
253
- statusCode: "failed",
254
- skippedReason: `Apex script file ${apexScript} does not exist`
255
- };
256
- return;
257
- }
258
- const apexCommand = `sf apex run --file ${apexScript}`;
259
- const commandRes = await execCommand(apexCommand, this, { fail: false, output: true });
260
- if (commandRes.status === 0) {
261
- uxLog("success", this, c.green(`[DeploymentActions] Apex action [${cmd.id}] executed successfully`));
262
- cmd.result = {
263
- statusCode: "success",
264
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
265
- };
266
- }
267
- else {
268
- uxLog("error", this, c.red(`[DeploymentActions] Apex action [${cmd.id}] failed with status code ${commandRes.status}`));
269
- cmd.result = {
270
- statusCode: "failed",
271
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
272
- };
273
- }
274
- }
275
- async function executeActionData(cmd) {
276
- const sfdmuProject = cmd.parameters?.sfdmuProject || '';
277
- if (!sfdmuProject) {
278
- uxLog("error", this, c.red(`[DeploymentActions] No sfdmuProject parameter provided for action [${cmd.id}]: ${cmd.label}`));
279
- cmd.result = {
280
- statusCode: "failed",
281
- skippedReason: "No sfdmuProject parameter provided"
282
- };
283
- return;
284
- }
285
- const sfdmuPath = await findDataWorkspaceByName(sfdmuProject);
286
- if (!sfdmuPath) {
287
- uxLog("error", this, c.red(`[DeploymentActions] sfdmu project ${sfdmuProject} not found for action [${cmd.id}]: ${cmd.label}`));
288
- cmd.result = {
289
- statusCode: "failed",
290
- skippedReason: `sfdmu project ${sfdmuProject} not found`
291
- };
292
- return;
293
- }
294
- let res;
295
219
  try {
296
- res = await importData(sfdmuPath, this);
220
+ const res = await actionInstance.run(cmd);
221
+ cmd.result = res;
297
222
  }
298
223
  catch (e) {
299
- uxLog("error", this, c.red(`[DeploymentActions] Data import action [${cmd.id}] failed: ${e.message}`));
224
+ uxLog("error", this, c.red(`[DeploymentActions] Exception while running action [${cmd.id}]: ${e.message}`));
300
225
  cmd.result = {
301
- statusCode: "failed",
226
+ statusCode: 'failed',
302
227
  output: e.message
303
228
  };
304
- return;
305
- }
306
- uxLog("success", this, c.green(`[DeploymentActions] Data import action [${cmd.id}] executed successfully`));
307
- cmd.result = {
308
- statusCode: "success",
309
- output: (res.stdout || "") + "\n" + (res.stderr || "")
310
- };
311
- }
312
- async function executeActionPublishCommunity(cmd) {
313
- const communityName = cmd.parameters?.communityName || '';
314
- if (!communityName) {
315
- uxLog("error", this, c.red(`[DeploymentActions] No communityName parameter provided for action [${cmd.id}]: ${cmd.label}`));
316
- cmd.result = {
317
- statusCode: "failed",
318
- skippedReason: "No communityName parameter provided"
319
- };
320
- return;
321
- }
322
- const publishCommand = `sf community publish --name "${communityName}"`;
323
- const commandRes = await execCommand(publishCommand, this, { fail: false, output: true });
324
- if (commandRes.status === 0) {
325
- uxLog("success", this, c.green(`[DeploymentActions] Publish community action [${cmd.id}] executed successfully`));
326
- cmd.result = {
327
- statusCode: "success",
328
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
329
- };
330
- }
331
- else {
332
- uxLog("error", this, c.red(`[DeploymentActions] Publish community action [${cmd.id}] failed with status code ${commandRes.status}`));
333
- cmd.result = {
334
- statusCode: "failed",
335
- output: (commandRes.stdout || "") + "\n" + (commandRes.stderr || "")
336
- };
337
229
  }
338
230
  }
339
- async function executeActionManual(cmd) {
340
- const instructions = cmd.parameters?.instructions || '';
341
- if (!instructions) {
342
- uxLog("error", this, c.red(`[DeploymentActions] No instructions parameter provided for manual action [${cmd.id}]: ${cmd.label}`));
343
- cmd.result = {
344
- statusCode: "failed",
345
- skippedReason: "No instructions parameter provided"
346
- };
347
- return;
348
- }
349
- uxLog("success", this, c.green(`[DeploymentActions] Manual action [${cmd.id}] requires manual intervention:\n${instructions}`));
350
- cmd.result = {
351
- statusCode: "success",
352
- output: `Manual action instructions:\n${instructions}`
353
- };
354
- }
231
+ /* jscpd:ignore-start */
232
+ /* Legacy action implementations moved to src/common/actionsProvider/*.ts
233
+ The concrete action classes encapsulate the previous executeAction* logic.
234
+ Kept for historical reference. */
355
235
  /* jscpd:ignore-end */
356
236
  function manageResultMarkdownBody(property, commands) {
357
237
  let markdownBody = `### ${property === 'commandsPreDeploy' ? 'Pre-deployment Actions' : 'Post-deployment Actions'} Results\n\n`;
@@ -362,7 +242,7 @@ function manageResultMarkdownBody(property, commands) {
362
242
  const statusIcon = cmd.result?.statusCode === "success" ? '✅' :
363
243
  cmd.result?.statusCode === "failed" ? '❌' :
364
244
  cmd.result?.statusCode === "skipped" ? '⚪' : '❓';
365
- markdownBody += `| ${cmd.label} | ${cmd.type} | ${statusIcon} ${cmd.result?.statusCode || 'not run'} |\n`;
245
+ markdownBody += `| ${cmd.label} | ${cmd.type || 'command'} | ${statusIcon} ${cmd.result?.statusCode || 'not run'} |\n`;
366
246
  }
367
247
  // Add details in html <detail> blocks, embedded in a root <details> block to avoid markdown rendering issues
368
248
  markdownBody += `\n<details>\n<summary>Expand to see details for each action</summary>\n\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"prePostCommandUtils.js","sourceRoot":"","sources":["../../../src/common/utils/prePostCommandUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prePostCommandUtils.js","sourceRoot":"","sources":["../../../src/common/utils/prePostCommandUtils.ts"],"names":[],"mappings":"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"}