@sfdxy/mule-build 1.0.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.
- package/README.md +301 -0
- package/dist/bin/mule-build.d.ts +8 -0
- package/dist/bin/mule-build.d.ts.map +1 -0
- package/dist/bin/mule-build.js +12 -0
- package/dist/bin/mule-build.js.map +1 -0
- package/dist/src/api/enforce.d.ts +11 -0
- package/dist/src/api/enforce.d.ts.map +1 -0
- package/dist/src/api/enforce.js +58 -0
- package/dist/src/api/enforce.js.map +1 -0
- package/dist/src/api/index.d.ts +12 -0
- package/dist/src/api/index.d.ts.map +1 -0
- package/dist/src/api/index.js +12 -0
- package/dist/src/api/index.js.map +1 -0
- package/dist/src/api/package.d.ts +15 -0
- package/dist/src/api/package.d.ts.map +1 -0
- package/dist/src/api/package.js +242 -0
- package/dist/src/api/package.js.map +1 -0
- package/dist/src/api/release.d.ts +11 -0
- package/dist/src/api/release.d.ts.map +1 -0
- package/dist/src/api/release.js +102 -0
- package/dist/src/api/release.js.map +1 -0
- package/dist/src/api/run.d.ts +11 -0
- package/dist/src/api/run.d.ts.map +1 -0
- package/dist/src/api/run.js +44 -0
- package/dist/src/api/run.js.map +1 -0
- package/dist/src/api/strip.d.ts +11 -0
- package/dist/src/api/strip.d.ts.map +1 -0
- package/dist/src/api/strip.js +57 -0
- package/dist/src/api/strip.js.map +1 -0
- package/dist/src/cli.d.ts +15 -0
- package/dist/src/cli.d.ts.map +1 -0
- package/dist/src/cli.js +174 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/config/ConfigLoader.d.ts +19 -0
- package/dist/src/config/ConfigLoader.d.ts.map +1 -0
- package/dist/src/config/ConfigLoader.js +84 -0
- package/dist/src/config/ConfigLoader.js.map +1 -0
- package/dist/src/config/SystemChecker.d.ts +29 -0
- package/dist/src/config/SystemChecker.d.ts.map +1 -0
- package/dist/src/config/SystemChecker.js +85 -0
- package/dist/src/config/SystemChecker.js.map +1 -0
- package/dist/src/config/defaults.d.ts +17 -0
- package/dist/src/config/defaults.d.ts.map +1 -0
- package/dist/src/config/defaults.js +37 -0
- package/dist/src/config/defaults.js.map +1 -0
- package/dist/src/engine/LocalRuntime.d.ts +41 -0
- package/dist/src/engine/LocalRuntime.d.ts.map +1 -0
- package/dist/src/engine/LocalRuntime.js +132 -0
- package/dist/src/engine/LocalRuntime.js.map +1 -0
- package/dist/src/engine/MavenBuilder.d.ts +49 -0
- package/dist/src/engine/MavenBuilder.d.ts.map +1 -0
- package/dist/src/engine/MavenBuilder.js +126 -0
- package/dist/src/engine/MavenBuilder.js.map +1 -0
- package/dist/src/engine/PomParser.d.ts +53 -0
- package/dist/src/engine/PomParser.d.ts.map +1 -0
- package/dist/src/engine/PomParser.js +175 -0
- package/dist/src/engine/PomParser.js.map +1 -0
- package/dist/src/engine/XmlProcessor.d.ts +47 -0
- package/dist/src/engine/XmlProcessor.d.ts.map +1 -0
- package/dist/src/engine/XmlProcessor.js +213 -0
- package/dist/src/engine/XmlProcessor.js.map +1 -0
- package/dist/src/index.d.ts +11 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +13 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/types/index.d.ts +209 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +16 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/utils/exec.d.ts +20 -0
- package/dist/src/utils/exec.d.ts.map +1 -0
- package/dist/src/utils/exec.js +57 -0
- package/dist/src/utils/exec.js.map +1 -0
- package/dist/src/utils/git.d.ts +26 -0
- package/dist/src/utils/git.d.ts.map +1 -0
- package/dist/src/utils/git.js +71 -0
- package/dist/src/utils/git.js.map +1 -0
- package/dist/src/utils/logger.d.ts +21 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/logger.js +59 -0
- package/dist/src/utils/logger.js.map +1 -0
- package/package.json +80 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalRuntime.js","sourceRoot":"","sources":["../../../src/engine/LocalRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Maven Builder Engine
|
|
3
|
+
*
|
|
4
|
+
* Handles Maven command generation and execution for Mule builds.
|
|
5
|
+
*/
|
|
6
|
+
import { Result, BuildEnvironment } from '../types/index.js';
|
|
7
|
+
export interface MavenBuildOptions {
|
|
8
|
+
/** Maven profile to use */
|
|
9
|
+
profile?: string;
|
|
10
|
+
/** Attach source code to package */
|
|
11
|
+
withSource?: boolean;
|
|
12
|
+
/** Skip MUnit tests */
|
|
13
|
+
skipTests?: boolean;
|
|
14
|
+
/** Create lightweight package (no dependencies) */
|
|
15
|
+
lightweight?: boolean;
|
|
16
|
+
/** Run in quiet mode */
|
|
17
|
+
quiet?: boolean;
|
|
18
|
+
/** Working directory */
|
|
19
|
+
cwd?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Check if Maven is installed
|
|
23
|
+
*/
|
|
24
|
+
export declare function isMavenInstalled(): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Generate Maven arguments for a build
|
|
27
|
+
*/
|
|
28
|
+
export declare function generateMavenArgs(options?: MavenBuildOptions): string[];
|
|
29
|
+
/**
|
|
30
|
+
* Generate Maven arguments for environment
|
|
31
|
+
*/
|
|
32
|
+
export declare function getMavenArgsForEnvironment(environment: BuildEnvironment, options?: MavenBuildOptions): string[];
|
|
33
|
+
/**
|
|
34
|
+
* Run Maven clean
|
|
35
|
+
*/
|
|
36
|
+
export declare function mavenClean(cwd?: string): Promise<Result<void>>;
|
|
37
|
+
/**
|
|
38
|
+
* Run Maven build with output to console
|
|
39
|
+
*/
|
|
40
|
+
export declare function mavenBuild(options?: MavenBuildOptions): Promise<Result<void>>;
|
|
41
|
+
/**
|
|
42
|
+
* Run Maven build silently and return result
|
|
43
|
+
*/
|
|
44
|
+
export declare function mavenBuildSilent(options?: MavenBuildOptions): Promise<Result<void>>;
|
|
45
|
+
/**
|
|
46
|
+
* Find the built JAR file in the target directory
|
|
47
|
+
*/
|
|
48
|
+
export declare function findBuiltJar(cwd?: string): Result<string>;
|
|
49
|
+
//# sourceMappingURL=MavenBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MavenBuilder.d.ts","sourceRoot":"","sources":["../../../src/engine/MavenBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,MAAM,EAAW,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAItE,MAAM,WAAW,iBAAiB;IAChC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uBAAuB;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mDAAmD;IACnD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wBAAwB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,EAAE,CA8B3E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,gBAAgB,EAC7B,OAAO,GAAE,iBAAsB,GAC9B,MAAM,EAAE,CAMV;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAcnF;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAiBvF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAiB7F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CA0BxE"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Maven Builder Engine
|
|
3
|
+
*
|
|
4
|
+
* Handles Maven command generation and execution for Mule builds.
|
|
5
|
+
*/
|
|
6
|
+
import { existsSync, readdirSync } from 'fs';
|
|
7
|
+
import { join } from 'path';
|
|
8
|
+
import { ok, err } from '../types/index.js';
|
|
9
|
+
import { exec, execWithOutput, commandExists } from '../utils/exec.js';
|
|
10
|
+
import { logger } from '../utils/logger.js';
|
|
11
|
+
/**
|
|
12
|
+
* Check if Maven is installed
|
|
13
|
+
*/
|
|
14
|
+
export async function isMavenInstalled() {
|
|
15
|
+
return commandExists('mvn');
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Generate Maven arguments for a build
|
|
19
|
+
*/
|
|
20
|
+
export function generateMavenArgs(options = {}) {
|
|
21
|
+
const args = ['clean', 'package'];
|
|
22
|
+
// Add profile
|
|
23
|
+
if (options.profile) {
|
|
24
|
+
args.push(`-P${options.profile}`);
|
|
25
|
+
}
|
|
26
|
+
// Add feature flags
|
|
27
|
+
if (options.withSource) {
|
|
28
|
+
args.push('-DattachMuleSources');
|
|
29
|
+
}
|
|
30
|
+
if (options.lightweight) {
|
|
31
|
+
args.push('-DlightweightPackage');
|
|
32
|
+
}
|
|
33
|
+
if (options.skipTests) {
|
|
34
|
+
args.push('-DskipMunitTests');
|
|
35
|
+
}
|
|
36
|
+
// Batch mode for CI/scripts
|
|
37
|
+
args.push('-B');
|
|
38
|
+
// Quiet mode
|
|
39
|
+
if (options.quiet) {
|
|
40
|
+
args.push('-q');
|
|
41
|
+
}
|
|
42
|
+
return args;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Generate Maven arguments for environment
|
|
46
|
+
*/
|
|
47
|
+
export function getMavenArgsForEnvironment(environment, options = {}) {
|
|
48
|
+
const envProfile = environment === 'production' ? 'prod' : undefined;
|
|
49
|
+
return generateMavenArgs({
|
|
50
|
+
...options,
|
|
51
|
+
profile: options.profile ?? envProfile,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Run Maven clean
|
|
56
|
+
*/
|
|
57
|
+
export async function mavenClean(cwd = process.cwd()) {
|
|
58
|
+
logger.step('Running Maven clean...');
|
|
59
|
+
const result = await exec('mvn', ['clean', '-q'], { cwd });
|
|
60
|
+
if (!result.success) {
|
|
61
|
+
return err(result.error ?? new Error('Maven clean failed'));
|
|
62
|
+
}
|
|
63
|
+
if (result.data?.exitCode !== 0) {
|
|
64
|
+
return err(new Error(`Maven clean failed with exit code ${result.data?.exitCode}`));
|
|
65
|
+
}
|
|
66
|
+
return ok(undefined);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Run Maven build with output to console
|
|
70
|
+
*/
|
|
71
|
+
export async function mavenBuild(options = {}) {
|
|
72
|
+
const cwd = options.cwd ?? process.cwd();
|
|
73
|
+
const args = generateMavenArgs(options);
|
|
74
|
+
logger.step(`Running: mvn ${args.join(' ')}`);
|
|
75
|
+
const result = await execWithOutput('mvn', args, { cwd });
|
|
76
|
+
if (!result.success) {
|
|
77
|
+
return err(result.error ?? new Error('Maven build failed'));
|
|
78
|
+
}
|
|
79
|
+
if (result.data !== 0) {
|
|
80
|
+
return err(new Error(`Maven build failed with exit code ${result.data}`));
|
|
81
|
+
}
|
|
82
|
+
return ok(undefined);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Run Maven build silently and return result
|
|
86
|
+
*/
|
|
87
|
+
export async function mavenBuildSilent(options = {}) {
|
|
88
|
+
const cwd = options.cwd ?? process.cwd();
|
|
89
|
+
const args = generateMavenArgs({ ...options, quiet: true });
|
|
90
|
+
logger.step('Building package...');
|
|
91
|
+
const result = await exec('mvn', args, { cwd });
|
|
92
|
+
if (!result.success) {
|
|
93
|
+
return err(result.error ?? new Error('Maven build failed'));
|
|
94
|
+
}
|
|
95
|
+
if (result.data?.exitCode !== 0) {
|
|
96
|
+
return err(new Error(`Maven build failed: ${result.data?.stderr}`));
|
|
97
|
+
}
|
|
98
|
+
return ok(undefined);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Find the built JAR file in the target directory
|
|
102
|
+
*/
|
|
103
|
+
export function findBuiltJar(cwd = process.cwd()) {
|
|
104
|
+
const targetDir = join(cwd, 'target');
|
|
105
|
+
if (!existsSync(targetDir)) {
|
|
106
|
+
return err(new Error('target directory not found. Run Maven build first.'));
|
|
107
|
+
}
|
|
108
|
+
try {
|
|
109
|
+
const files = readdirSync(targetDir);
|
|
110
|
+
// First, look for -mule-application.jar (standard Mule package)
|
|
111
|
+
const muleJar = files.find((f) => f.endsWith('-mule-application.jar'));
|
|
112
|
+
if (muleJar) {
|
|
113
|
+
return ok(join(targetDir, muleJar));
|
|
114
|
+
}
|
|
115
|
+
// Fall back to any .jar file
|
|
116
|
+
const anyJar = files.find((f) => f.endsWith('.jar') && !f.includes('original'));
|
|
117
|
+
if (anyJar) {
|
|
118
|
+
return ok(join(targetDir, anyJar));
|
|
119
|
+
}
|
|
120
|
+
return err(new Error('No JAR file found in target directory'));
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
return err(error instanceof Error ? error : new Error(String(error)));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=MavenBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MavenBuilder.js","sourceRoot":"","sources":["../../../src/engine/MavenBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* POM Parser Engine
|
|
3
|
+
*
|
|
4
|
+
* Handles reading and modifying pom.xml files.
|
|
5
|
+
* Uses regex-based approach to preserve formatting.
|
|
6
|
+
*/
|
|
7
|
+
import { Result, PomInfo } from '../types/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* Get the path to pom.xml in the given directory
|
|
10
|
+
*/
|
|
11
|
+
export declare function getPomPath(cwd?: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* Check if pom.xml exists
|
|
14
|
+
*/
|
|
15
|
+
export declare function pomExists(cwd?: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Read pom.xml content
|
|
18
|
+
*/
|
|
19
|
+
export declare function readPom(cwd?: string): Result<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Write pom.xml content
|
|
22
|
+
*/
|
|
23
|
+
export declare function writePom(content: string, cwd?: string): Result<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Extract project information from pom.xml
|
|
26
|
+
*/
|
|
27
|
+
export declare function getPomInfo(cwd?: string): Result<PomInfo>;
|
|
28
|
+
/**
|
|
29
|
+
* Get project name (prefers <name>, falls back to <artifactId>)
|
|
30
|
+
*/
|
|
31
|
+
export declare function getProjectName(cwd?: string): Result<string>;
|
|
32
|
+
/**
|
|
33
|
+
* Get project version
|
|
34
|
+
*/
|
|
35
|
+
export declare function getVersion(cwd?: string): Result<string>;
|
|
36
|
+
/**
|
|
37
|
+
* Set project version in pom.xml
|
|
38
|
+
* Only updates the first <version> tag (project version)
|
|
39
|
+
*/
|
|
40
|
+
export declare function setVersion(version: string, cwd?: string): Result<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Set project name in pom.xml
|
|
43
|
+
*/
|
|
44
|
+
export declare function setName(name: string, cwd?: string): Result<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Create a backup of pom.xml
|
|
47
|
+
*/
|
|
48
|
+
export declare function backupPom(cwd?: string): Result<string>;
|
|
49
|
+
/**
|
|
50
|
+
* Restore pom.xml from backup
|
|
51
|
+
*/
|
|
52
|
+
export declare function restorePom(cwd?: string): Result<void>;
|
|
53
|
+
//# sourceMappingURL=PomParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PomParser.d.ts","sourceRoot":"","sources":["../../../src/engine/PomParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,MAAM,EAAW,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE7D;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAE9D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAanE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,CASnF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,OAAO,CAAC,CAkCvE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAQ1E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAWtE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,CAiBrF;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,CAc/E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAcrE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,CAapE"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* POM Parser Engine
|
|
3
|
+
*
|
|
4
|
+
* Handles reading and modifying pom.xml files.
|
|
5
|
+
* Uses regex-based approach to preserve formatting.
|
|
6
|
+
*/
|
|
7
|
+
import { readFileSync, writeFileSync, existsSync } from 'fs';
|
|
8
|
+
import { join } from 'path';
|
|
9
|
+
import { ok, err } from '../types/index.js';
|
|
10
|
+
/**
|
|
11
|
+
* Get the path to pom.xml in the given directory
|
|
12
|
+
*/
|
|
13
|
+
export function getPomPath(cwd = process.cwd()) {
|
|
14
|
+
return join(cwd, 'pom.xml');
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Check if pom.xml exists
|
|
18
|
+
*/
|
|
19
|
+
export function pomExists(cwd = process.cwd()) {
|
|
20
|
+
return existsSync(getPomPath(cwd));
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Read pom.xml content
|
|
24
|
+
*/
|
|
25
|
+
export function readPom(cwd = process.cwd()) {
|
|
26
|
+
const pomPath = getPomPath(cwd);
|
|
27
|
+
if (!existsSync(pomPath)) {
|
|
28
|
+
return err(new Error(`pom.xml not found at ${pomPath}`));
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
const content = readFileSync(pomPath, 'utf-8');
|
|
32
|
+
return ok(content);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
return err(error instanceof Error ? error : new Error(String(error)));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Write pom.xml content
|
|
40
|
+
*/
|
|
41
|
+
export function writePom(content, cwd = process.cwd()) {
|
|
42
|
+
const pomPath = getPomPath(cwd);
|
|
43
|
+
try {
|
|
44
|
+
writeFileSync(pomPath, content);
|
|
45
|
+
return ok(undefined);
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
return err(error instanceof Error ? error : new Error(String(error)));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Extract project information from pom.xml
|
|
53
|
+
*/
|
|
54
|
+
export function getPomInfo(cwd = process.cwd()) {
|
|
55
|
+
const pomResult = readPom(cwd);
|
|
56
|
+
if (!pomResult.success || !pomResult.data) {
|
|
57
|
+
return err(pomResult.error ?? new Error('Failed to read pom.xml'));
|
|
58
|
+
}
|
|
59
|
+
const content = pomResult.data;
|
|
60
|
+
const info = {};
|
|
61
|
+
// Extract version (first occurrence, which is the project version)
|
|
62
|
+
const versionMatch = content.match(/<version>([^<]+)<\/version>/);
|
|
63
|
+
if (versionMatch) {
|
|
64
|
+
info.version = versionMatch[1];
|
|
65
|
+
}
|
|
66
|
+
// Extract artifactId (first occurrence)
|
|
67
|
+
const artifactMatch = content.match(/<artifactId>([^<]+)<\/artifactId>/);
|
|
68
|
+
if (artifactMatch) {
|
|
69
|
+
info.artifactId = artifactMatch[1];
|
|
70
|
+
}
|
|
71
|
+
// Extract name (first occurrence)
|
|
72
|
+
const nameMatch = content.match(/<name>([^<]+)<\/name>/);
|
|
73
|
+
if (nameMatch) {
|
|
74
|
+
info.name = nameMatch[1];
|
|
75
|
+
}
|
|
76
|
+
// Extract groupId (first occurrence)
|
|
77
|
+
const groupMatch = content.match(/<groupId>([^<]+)<\/groupId>/);
|
|
78
|
+
if (groupMatch) {
|
|
79
|
+
info.groupId = groupMatch[1];
|
|
80
|
+
}
|
|
81
|
+
return ok(info);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get project name (prefers <name>, falls back to <artifactId>)
|
|
85
|
+
*/
|
|
86
|
+
export function getProjectName(cwd = process.cwd()) {
|
|
87
|
+
const infoResult = getPomInfo(cwd);
|
|
88
|
+
if (!infoResult.success || !infoResult.data) {
|
|
89
|
+
return err(infoResult.error ?? new Error('Failed to get project info'));
|
|
90
|
+
}
|
|
91
|
+
const name = infoResult.data.name ?? infoResult.data.artifactId ?? 'mule-app';
|
|
92
|
+
return ok(name);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get project version
|
|
96
|
+
*/
|
|
97
|
+
export function getVersion(cwd = process.cwd()) {
|
|
98
|
+
const infoResult = getPomInfo(cwd);
|
|
99
|
+
if (!infoResult.success || !infoResult.data) {
|
|
100
|
+
return err(infoResult.error ?? new Error('Failed to get project info'));
|
|
101
|
+
}
|
|
102
|
+
if (!infoResult.data.version) {
|
|
103
|
+
return err(new Error('Version not found in pom.xml'));
|
|
104
|
+
}
|
|
105
|
+
return ok(infoResult.data.version);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Set project version in pom.xml
|
|
109
|
+
* Only updates the first <version> tag (project version)
|
|
110
|
+
*/
|
|
111
|
+
export function setVersion(version, cwd = process.cwd()) {
|
|
112
|
+
const pomResult = readPom(cwd);
|
|
113
|
+
if (!pomResult.success || !pomResult.data) {
|
|
114
|
+
return err(pomResult.error ?? new Error('Failed to read pom.xml'));
|
|
115
|
+
}
|
|
116
|
+
let content = pomResult.data;
|
|
117
|
+
let replaced = false;
|
|
118
|
+
// Replace only the first version tag
|
|
119
|
+
content = content.replace(/<version>([^<]+)<\/version>/, () => {
|
|
120
|
+
if (replaced)
|
|
121
|
+
return `<version>${version}</version>`;
|
|
122
|
+
replaced = true;
|
|
123
|
+
return `<version>${version}</version>`;
|
|
124
|
+
});
|
|
125
|
+
return writePom(content, cwd);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Set project name in pom.xml
|
|
129
|
+
*/
|
|
130
|
+
export function setName(name, cwd = process.cwd()) {
|
|
131
|
+
const pomResult = readPom(cwd);
|
|
132
|
+
if (!pomResult.success || !pomResult.data) {
|
|
133
|
+
return err(pomResult.error ?? new Error('Failed to read pom.xml'));
|
|
134
|
+
}
|
|
135
|
+
let content = pomResult.data;
|
|
136
|
+
// Replace the name tag
|
|
137
|
+
if (content.includes('<name>')) {
|
|
138
|
+
content = content.replace(/<name>[^<]*<\/name>/, `<name>${name}</name>`);
|
|
139
|
+
}
|
|
140
|
+
return writePom(content, cwd);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Create a backup of pom.xml
|
|
144
|
+
*/
|
|
145
|
+
export function backupPom(cwd = process.cwd()) {
|
|
146
|
+
const pomResult = readPom(cwd);
|
|
147
|
+
if (!pomResult.success || !pomResult.data) {
|
|
148
|
+
return err(pomResult.error ?? new Error('Failed to read pom.xml'));
|
|
149
|
+
}
|
|
150
|
+
const backupPath = join(cwd, 'pom.xml.bak');
|
|
151
|
+
try {
|
|
152
|
+
writeFileSync(backupPath, pomResult.data);
|
|
153
|
+
return ok(backupPath);
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
return err(error instanceof Error ? error : new Error(String(error)));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Restore pom.xml from backup
|
|
161
|
+
*/
|
|
162
|
+
export function restorePom(cwd = process.cwd()) {
|
|
163
|
+
const backupPath = join(cwd, 'pom.xml.bak');
|
|
164
|
+
if (!existsSync(backupPath)) {
|
|
165
|
+
return err(new Error('Backup file not found'));
|
|
166
|
+
}
|
|
167
|
+
try {
|
|
168
|
+
const content = readFileSync(backupPath, 'utf-8');
|
|
169
|
+
return writePom(content, cwd);
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
return err(error instanceof Error ? error : new Error(String(error)));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=PomParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PomParser.js","sourceRoot":"","sources":["../../../src/engine/PomParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XML Processor Engine
|
|
3
|
+
*
|
|
4
|
+
* Handles safe modification of MuleSoft XML configuration files.
|
|
5
|
+
* Uses regex-based approach to preserve formatting and comments.
|
|
6
|
+
*/
|
|
7
|
+
import { Result, StripResult, EnforceResult } from '../types/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* Strip secure:: prefixes from XML content
|
|
10
|
+
* Preserves file formatting and comments
|
|
11
|
+
*/
|
|
12
|
+
export declare function stripSecureFromContent(content: string): {
|
|
13
|
+
result: string;
|
|
14
|
+
count: number;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Check content for unsecured sensitive properties
|
|
18
|
+
*/
|
|
19
|
+
export declare function findUnsecuredProperties(content: string, sensitivePatterns?: string[]): {
|
|
20
|
+
property: string;
|
|
21
|
+
line: number;
|
|
22
|
+
value: string;
|
|
23
|
+
}[];
|
|
24
|
+
/**
|
|
25
|
+
* Get all XML files in a directory recursively
|
|
26
|
+
*/
|
|
27
|
+
export declare function getXmlFiles(directory: string): string[];
|
|
28
|
+
/**
|
|
29
|
+
* Strip secure:: prefixes from files
|
|
30
|
+
*/
|
|
31
|
+
export declare function stripSecure(target: string, options?: {
|
|
32
|
+
dryRun?: boolean;
|
|
33
|
+
cwd?: string;
|
|
34
|
+
}): Promise<Result<StripResult>>;
|
|
35
|
+
/**
|
|
36
|
+
* Enforce secure:: prefixes for sensitive properties
|
|
37
|
+
*/
|
|
38
|
+
export declare function enforceSecure(target: string, options?: {
|
|
39
|
+
sensitivePatterns?: string[];
|
|
40
|
+
cwd?: string;
|
|
41
|
+
}): Promise<Result<EnforceResult>>;
|
|
42
|
+
/**
|
|
43
|
+
* Remove secure-properties:config element from XML content
|
|
44
|
+
* Uses regex to preserve formatting
|
|
45
|
+
*/
|
|
46
|
+
export declare function removeSecurePropertiesConfig(content: string): string;
|
|
47
|
+
//# sourceMappingURL=XmlProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"XmlProcessor.d.ts","sourceRoot":"","sources":["../../../src/engine/XmlProcessor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,MAAM,EAGN,WAAW,EACX,aAAa,EAGd,MAAM,mBAAmB,CAAC;AAmC3B;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAgBzF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,iBAAiB,GAAE,MAAM,EAA+B,GACvD;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CA+CrD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAuBvD;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/C,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAyC9B;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC3D,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAqChC;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMpE"}
|