workspace-manager-cli 1.0.0 → 1.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.
- package/README.md +29 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +134 -30
- package/dist/build.js.map +1 -1
- package/dist/config.d.ts +48 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +45 -3
- package/dist/config.js.map +1 -1
- package/dist/copy.d.ts.map +1 -1
- package/dist/copy.js +3 -0
- package/dist/copy.js.map +1 -1
- package/dist/git.d.ts +5 -0
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +53 -8
- package/dist/git.js.map +1 -1
- package/dist/index-core.js +654 -0
- package/dist/index.js +41 -8
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +21 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +50 -0
- package/dist/logger.js.map +1 -1
- package/dist/status.d.ts +2 -0
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +71 -13
- package/dist/status.js.map +1 -1
- package/dist/webpack-transform.d.ts +8 -0
- package/dist/webpack-transform.d.ts.map +1 -0
- package/dist/webpack-transform.js +147 -0
- package/dist/webpack-transform.js.map +1 -0
- package/package.json +5 -2
package/README.md
CHANGED
|
@@ -65,10 +65,12 @@ Example of a generated `workspace.config.json` (base-core-custom):
|
|
|
65
65
|
| `base.name` | string | \_required\* | Base repo name (cache dir). Required when the project type includes base. |
|
|
66
66
|
| `base.url` | string | \_required\* | Git URL of base repo. |
|
|
67
67
|
| `base.ref` | string | `"main"` | Branch/tag/commit for base. |
|
|
68
|
+
| `base.from` | string | _n/a_ | Set by `wmc init` to the friendly branch/tag if the input ref was a hash; otherwise matches the ref used. |
|
|
68
69
|
| `core.name` | string | _required_ | Core repo name (cache dir). |
|
|
69
70
|
| `core.url` | string | \_required\*\* | Git URL of core repo (required for `core-custom` and `base-core-custom`; omit for `base-core`). |
|
|
70
71
|
| `core.path` | string | `"core"` | Local path to core folder (only for `base-core` type). |
|
|
71
72
|
| `core.ref` | string | `"main"` | Branch/tag/commit for core (only used when `core.url` is set). |
|
|
73
|
+
| `core.from` | string | _n/a_ | Set by `wmc init` to the friendly branch/tag if the input ref was a hash; otherwise matches the ref used. |
|
|
72
74
|
| (fixed) workspace | string | `"workspace"` | The workspace directory is fixed to `./workspace` and is not configurable |
|
|
73
75
|
| `custom.path` | string | `"custom"` | Path to your custom code directory |
|
|
74
76
|
| `install.command` | string | `"npm install"` | Command to run inside `workspace` after copying (skipped with `--no-install`) |
|
|
@@ -117,6 +119,7 @@ wmc init [options]
|
|
|
117
119
|
- `base-core-custom`: Clones both base and core
|
|
118
120
|
- Checks out the chosen refs
|
|
119
121
|
- Persists the resolved hashes/refs to `workspace.config.json`
|
|
122
|
+
- If you pass a commit hash, `wmc` will try to resolve a friendly branch/tag and store it in `base.from` / `core.from`; otherwise it stores the ref you provided.
|
|
120
123
|
- (Optional) Builds the workspace when `--build` is provided
|
|
121
124
|
|
|
122
125
|
### `build` (alias: `sync`)
|
|
@@ -177,19 +180,23 @@ wmc status
|
|
|
177
180
|
|
|
178
181
|
- `core-custom`:
|
|
179
182
|
- Core repo cache status (cloned, commit, branch)
|
|
183
|
+
- Core ref/`from` (shows friendly branch/tag if initialized with a hash)
|
|
180
184
|
- Core updates available (if any)
|
|
181
185
|
- Custom directory uncommitted changes
|
|
182
186
|
|
|
183
187
|
- `base-core`:
|
|
184
188
|
- Base repo cache status (cloned, commit, branch)
|
|
189
|
+
- Base ref/`from` (shows friendly branch/tag if initialized with a hash)
|
|
185
190
|
- Base updates available (if any)
|
|
186
191
|
- Local core directory location
|
|
187
192
|
- Custom directory uncommitted changes (if applicable)
|
|
188
193
|
|
|
189
194
|
- `base-core-custom`:
|
|
190
195
|
- Base repo cache status (cloned, commit, branch)
|
|
196
|
+
- Base ref/`from` (shows friendly branch/tag if initialized with a hash)
|
|
191
197
|
- Base updates available (if any)
|
|
192
198
|
- Core repo cache status (cloned, commit, branch)
|
|
199
|
+
- Core ref/`from` (shows friendly branch/tag if initialized with a hash)
|
|
193
200
|
- Core updates available (if any)
|
|
194
201
|
- Custom directory uncommitted changes
|
|
195
202
|
|
|
@@ -222,6 +229,27 @@ Core repository is cloned to a local cache directory and reused across builds:
|
|
|
222
229
|
- **Fast builds**: Reuses cached repositories, only fetches when needed
|
|
223
230
|
- **Update notifications**: `wmc status` shows when new commits are available
|
|
224
231
|
|
|
232
|
+
### Workflow Diagram
|
|
233
|
+
|
|
234
|
+
```mermaid
|
|
235
|
+
graph TD
|
|
236
|
+
A["wmc init --build"] --> B{Project Type?}
|
|
237
|
+
B -->|core-custom| C["Clone core to<br/>.wmc-cache/"]
|
|
238
|
+
B -->|base-core| D["Clone base to<br/>.wmc-cache/"]
|
|
239
|
+
B -->|base-core-custom| E["Clone base & core<br/>to .wmc-cache/"]
|
|
240
|
+
C --> F["Copy core →<br/>workspace/"]
|
|
241
|
+
D --> G["Copy base →<br/>workspace/"]
|
|
242
|
+
E --> H["Copy base →<br/>workspace/"]
|
|
243
|
+
F --> I["Overlay custom/ →<br/>workspace/src/custom"]
|
|
244
|
+
G --> J["Overlay local core →<br/>workspace/src/core"]
|
|
245
|
+
H --> K["Copy ./wmc-cache/{core}/src/core →<br/>workspace/src/core"]
|
|
246
|
+
I --> L["Run npm install"]
|
|
247
|
+
J --> L
|
|
248
|
+
K --> M["Overlay custom/ →<br/>workspace/src/core/custom"]
|
|
249
|
+
M --> L
|
|
250
|
+
L --> N["✅ Workspace Ready"]
|
|
251
|
+
```
|
|
252
|
+
|
|
225
253
|
**Project Structure:**
|
|
226
254
|
|
|
227
255
|
```
|
|
@@ -231,7 +259,7 @@ Core repository is cloned to a local cache directory and reused across builds:
|
|
|
231
259
|
│ workspace.config.json │
|
|
232
260
|
│ custom/ │
|
|
233
261
|
│ .wmc-cache/ ← Git repos cloned here │
|
|
234
|
-
│ └── CORE-
|
|
262
|
+
│ └── CORE-Project/ │
|
|
235
263
|
│ ├── .git/ │
|
|
236
264
|
│ └── src/ │
|
|
237
265
|
│ workspace/ (generated) ← Files copied here │
|
package/dist/build.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAsKD;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,CAwItB"}
|
package/dist/build.js
CHANGED
|
@@ -2,6 +2,7 @@ import fs from "fs-extra";
|
|
|
2
2
|
import path from "path";
|
|
3
3
|
import { spawn } from "child_process";
|
|
4
4
|
import { getCorePath, getBasePath, isGitRepo } from "./git.js";
|
|
5
|
+
import { transformWebpackConfig } from "./webpack-transform.js";
|
|
5
6
|
/**
|
|
6
7
|
* Default excludes for copying
|
|
7
8
|
*/
|
|
@@ -21,16 +22,18 @@ import { copyWithExcludes } from "./copy.js";
|
|
|
21
22
|
* the build can proceed and the user can clean up the stale folder manually.
|
|
22
23
|
*/
|
|
23
24
|
async function removePathWithRetries(target, logger, attempts = 5) {
|
|
25
|
+
logger.startSpinner(`Removing ${target}...`);
|
|
24
26
|
for (let i = 0; i < attempts; i++) {
|
|
25
27
|
try {
|
|
26
28
|
await fs.remove(target);
|
|
29
|
+
logger.succeedSpinner(`Removed ${target}`);
|
|
27
30
|
return;
|
|
28
31
|
}
|
|
29
32
|
catch (err) {
|
|
30
33
|
const code = err && err.code;
|
|
31
34
|
if (code === "EBUSY" || code === "EPERM" || code === "ENOTEMPTY") {
|
|
32
35
|
const wait = Math.min(1000 * 2 ** i, 5000);
|
|
33
|
-
logger.
|
|
36
|
+
logger.updateSpinner(`Remove failed (attempt ${i + 1}/${attempts}): ${code}. Retrying in ${wait}ms...`);
|
|
34
37
|
await new Promise((r) => setTimeout(r, wait));
|
|
35
38
|
continue;
|
|
36
39
|
}
|
|
@@ -42,10 +45,11 @@ async function removePathWithRetries(target, logger, attempts = 5) {
|
|
|
42
45
|
try {
|
|
43
46
|
const tmp = `${target}.wmc-deleted-${Date.now()}`;
|
|
44
47
|
await fs.move(target, tmp, { overwrite: true });
|
|
45
|
-
logger.
|
|
48
|
+
logger.failSpinner(`Could not remove '${target}' after ${attempts} attempts. Renamed to '${tmp}' for manual cleanup.`);
|
|
46
49
|
return;
|
|
47
50
|
}
|
|
48
51
|
catch (err) {
|
|
52
|
+
logger.stopSpinner();
|
|
49
53
|
logger.error(`Failed to remove or rename '${target}'. Please close programs that may be locking files (editors, terminals), ensure no Node processes are using the directory, then remove it manually. Error: ${err.message}`);
|
|
50
54
|
throw err;
|
|
51
55
|
}
|
|
@@ -55,7 +59,8 @@ async function removePathWithRetries(target, logger, attempts = 5) {
|
|
|
55
59
|
*/
|
|
56
60
|
async function runCommand(command, cwd, logger) {
|
|
57
61
|
return new Promise((resolve) => {
|
|
58
|
-
|
|
62
|
+
const startTime = Date.now();
|
|
63
|
+
logger.startSpinner(`Running ${command}...`);
|
|
59
64
|
// Parse command - handle cross-platform
|
|
60
65
|
const isWindows = process.platform === "win32";
|
|
61
66
|
const shell = isWindows ? "cmd.exe" : "/bin/sh";
|
|
@@ -66,21 +71,66 @@ async function runCommand(command, cwd, logger) {
|
|
|
66
71
|
env: { ...process.env },
|
|
67
72
|
});
|
|
68
73
|
child.on("close", (code) => {
|
|
74
|
+
const elapsed = ((Date.now() - startTime) / 1000).toFixed(1);
|
|
69
75
|
if (code === 0) {
|
|
70
|
-
logger.
|
|
76
|
+
logger.succeedSpinner(`Command completed in ${elapsed}s`);
|
|
71
77
|
resolve(true);
|
|
72
78
|
}
|
|
73
79
|
else {
|
|
74
|
-
logger.
|
|
80
|
+
logger.failSpinner(`Command failed with exit code ${code} after ${elapsed}s`);
|
|
75
81
|
resolve(false);
|
|
76
82
|
}
|
|
77
83
|
});
|
|
78
84
|
child.on("error", (err) => {
|
|
79
|
-
logger.
|
|
85
|
+
logger.failSpinner(`Command failed: ${err.message}`);
|
|
80
86
|
resolve(false);
|
|
81
87
|
});
|
|
82
88
|
});
|
|
83
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Validate that required local directories exist before building workspace
|
|
92
|
+
*/
|
|
93
|
+
async function validateLocalDirectories(config, logger, dryRun) {
|
|
94
|
+
switch (config.projectType) {
|
|
95
|
+
case "core-custom":
|
|
96
|
+
// Check for custom directory
|
|
97
|
+
if (config.customPath) {
|
|
98
|
+
if (!(await fs.pathExists(config.customPath))) {
|
|
99
|
+
logger.error(`Custom directory not found: ${config.customPath}`);
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
if (!dryRun) {
|
|
103
|
+
logger.info(`Validated custom directory: ${config.customPath}`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
break;
|
|
107
|
+
case "base-core":
|
|
108
|
+
// Check for local core directory
|
|
109
|
+
if (config.coreLocalPath) {
|
|
110
|
+
if (!(await fs.pathExists(config.coreLocalPath))) {
|
|
111
|
+
logger.error(`Local core directory not found: ${config.coreLocalPath}`);
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
if (!dryRun) {
|
|
115
|
+
logger.info(`Validated local core directory: ${config.coreLocalPath}`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
break;
|
|
119
|
+
case "base-core-custom":
|
|
120
|
+
// Check for custom directory
|
|
121
|
+
if (config.customPath) {
|
|
122
|
+
if (!(await fs.pathExists(config.customPath))) {
|
|
123
|
+
logger.error(`Custom directory not found: ${config.customPath}`);
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
if (!dryRun) {
|
|
127
|
+
logger.info(`Validated custom directory: ${config.customPath}`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
break;
|
|
131
|
+
}
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
84
134
|
/**
|
|
85
135
|
* Build the workspace by copying layers based on project type
|
|
86
136
|
*/
|
|
@@ -110,6 +160,11 @@ export async function buildWorkspace(config, logger, options = {}) {
|
|
|
110
160
|
if (dryRun) {
|
|
111
161
|
logger.info(`Effective excludes: ${excludesDisplay}`);
|
|
112
162
|
}
|
|
163
|
+
// Validate required local directories exist BEFORE creating workspace
|
|
164
|
+
const validationResult = await validateLocalDirectories(config, logger, dryRun);
|
|
165
|
+
if (!validationResult) {
|
|
166
|
+
return result;
|
|
167
|
+
}
|
|
113
168
|
// Step 1: Wipe workspace directory if exists (ONLY if not root)
|
|
114
169
|
const isRoot = path.relative(config.projectRoot, config.workspacePath) === "";
|
|
115
170
|
if (!isRoot && (await fs.pathExists(config.workspacePath))) {
|
|
@@ -143,31 +198,17 @@ export async function buildWorkspace(config, logger, options = {}) {
|
|
|
143
198
|
await buildBaseCoreCustom(config, logger, result, actions, excludes, dryRun);
|
|
144
199
|
break;
|
|
145
200
|
}
|
|
201
|
+
// Stop immediately if build failed - don't run install
|
|
146
202
|
if (!result.success) {
|
|
147
203
|
if (dryRun) {
|
|
148
|
-
// Even if build steps failed (e.g., missing repos), show planned actions including .gitignore in dry-run
|
|
149
|
-
actions.push("Create .gitignore");
|
|
150
|
-
logger.debug("[dry-run] Create .gitignore");
|
|
151
204
|
logger.info("Dry run complete. Actions that would be performed:");
|
|
152
205
|
actions.forEach((action) => logger.info(` - ${action}`));
|
|
153
206
|
}
|
|
207
|
+
else {
|
|
208
|
+
logger.error("Build failed. Stopping before install.");
|
|
209
|
+
}
|
|
154
210
|
return result;
|
|
155
211
|
}
|
|
156
|
-
// Create .gitignore (before install) - save it in project root
|
|
157
|
-
actions.push("Create .gitignore");
|
|
158
|
-
const gitignorePath = path.join(config.projectRoot, ".gitignore");
|
|
159
|
-
// Minimal, fixed .gitignore (workspace and cache)
|
|
160
|
-
const gitignoreContent = `# Workspace CLI
|
|
161
|
-
workspace/
|
|
162
|
-
.wmc-cache/
|
|
163
|
-
`;
|
|
164
|
-
if (!dryRun) {
|
|
165
|
-
await fs.writeFile(gitignorePath, gitignoreContent, "utf-8");
|
|
166
|
-
logger.info(`Created .gitignore at ${gitignorePath}`);
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
logger.debug(`[dry-run] Create .gitignore at ${gitignorePath}`);
|
|
170
|
-
}
|
|
171
212
|
// Run install command
|
|
172
213
|
if (!noInstall && config.install.command) {
|
|
173
214
|
actions.push(`Run install: ${config.install.command}`);
|
|
@@ -207,10 +248,12 @@ async function buildCoreCustom(config, logger, result, actions, excludes, dryRun
|
|
|
207
248
|
const isLocalCoreSource = !!config.coreSrcPath || !isRemoteCore;
|
|
208
249
|
if (!corePath || !(await fs.pathExists(corePath))) {
|
|
209
250
|
logger.error(`Core source not found at ${corePath}.`);
|
|
251
|
+
result.success = false;
|
|
210
252
|
return;
|
|
211
253
|
}
|
|
212
254
|
if (!isLocalCoreSource && !(await isGitRepo(corePath))) {
|
|
213
255
|
logger.error(`Core repository not found at ${corePath}. Run 'init' first.`);
|
|
256
|
+
result.success = false;
|
|
214
257
|
return;
|
|
215
258
|
}
|
|
216
259
|
// Surface the core source being used for visibility
|
|
@@ -230,7 +273,13 @@ async function buildCoreCustom(config, logger, result, actions, excludes, dryRun
|
|
|
230
273
|
if (!dryRun) {
|
|
231
274
|
logger.success(`Copied ${result.coreFilesCopied} files from core`);
|
|
232
275
|
}
|
|
233
|
-
// Step 2:
|
|
276
|
+
// Step 2: Transform webpack config if enabled
|
|
277
|
+
const webpackTransformEnabled = config.webpackTransform?.enabled ?? true;
|
|
278
|
+
if (webpackTransformEnabled) {
|
|
279
|
+
actions.push("Transform webpack config for symlink support");
|
|
280
|
+
await transformWebpackConfig(config, logger, dryRun);
|
|
281
|
+
}
|
|
282
|
+
// Step 3: Symlink custom directory to src/custom
|
|
234
283
|
const customMountPath = path.join(config.workspacePath, "src", "custom");
|
|
235
284
|
if (config.customPath && (await fs.pathExists(config.customPath))) {
|
|
236
285
|
actions.push(`Symlink custom: ${config.customDir || config.custom?.path} -> ${customMountPath}`);
|
|
@@ -252,7 +301,9 @@ async function buildCoreCustom(config, logger, result, actions, excludes, dryRun
|
|
|
252
301
|
}
|
|
253
302
|
}
|
|
254
303
|
else if (config.customPath) {
|
|
255
|
-
logger.
|
|
304
|
+
logger.error(`Custom directory not found: ${config.customPath}`);
|
|
305
|
+
result.success = false;
|
|
306
|
+
return;
|
|
256
307
|
}
|
|
257
308
|
result.success = true;
|
|
258
309
|
}
|
|
@@ -264,6 +315,7 @@ async function buildBaseCore(config, logger, result, actions, excludes, dryRun)
|
|
|
264
315
|
// Verify base is available
|
|
265
316
|
if (!basePath || !(await isGitRepo(basePath))) {
|
|
266
317
|
logger.error(`Base repository not found at ${basePath}. Run 'init' first.`);
|
|
318
|
+
result.success = false;
|
|
267
319
|
return;
|
|
268
320
|
}
|
|
269
321
|
// Step 1: Copy base contents to workspace root
|
|
@@ -293,7 +345,15 @@ async function buildBaseCore(config, logger, result, actions, excludes, dryRun)
|
|
|
293
345
|
}
|
|
294
346
|
}
|
|
295
347
|
else if (config.coreLocalPath) {
|
|
296
|
-
logger.
|
|
348
|
+
logger.error(`Local core directory not found: ${config.coreLocalPath}`);
|
|
349
|
+
result.success = false;
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
// Step 3: Transform webpack config if enabled
|
|
353
|
+
const webpackTransformEnabled = config.webpackTransform?.enabled ?? true;
|
|
354
|
+
if (webpackTransformEnabled) {
|
|
355
|
+
actions.push("Transform webpack config for symlink support");
|
|
356
|
+
await transformWebpackConfig(config, logger, dryRun);
|
|
297
357
|
}
|
|
298
358
|
result.success = true;
|
|
299
359
|
}
|
|
@@ -306,11 +366,13 @@ async function buildBaseCoreCustom(config, logger, result, actions, excludes, dr
|
|
|
306
366
|
// Verify base is available
|
|
307
367
|
if (!basePath || !(await isGitRepo(basePath))) {
|
|
308
368
|
logger.error(`Base repository not found at ${basePath}. Run 'init' first.`);
|
|
369
|
+
result.success = false;
|
|
309
370
|
return;
|
|
310
371
|
}
|
|
311
372
|
// Verify core is available
|
|
312
373
|
if (!(await isGitRepo(corePath))) {
|
|
313
374
|
logger.error(`Core repository not found at ${corePath}. Run 'init' first.`);
|
|
375
|
+
result.success = false;
|
|
314
376
|
return;
|
|
315
377
|
}
|
|
316
378
|
// Step 1: Copy base contents to workspace root
|
|
@@ -322,40 +384,80 @@ async function buildBaseCoreCustom(config, logger, result, actions, excludes, dr
|
|
|
322
384
|
// Step 2: Overlay remote core to src/core (explicit override wins)
|
|
323
385
|
let coreSrcPath;
|
|
324
386
|
if (config.coreSrcPath) {
|
|
387
|
+
// Use explicitly configured core source path
|
|
325
388
|
coreSrcPath = config.coreSrcPath;
|
|
326
389
|
// Surface chosen core source as an action for dry-run visibility
|
|
327
390
|
actions.push(`Core source: ${coreSrcPath}`);
|
|
328
391
|
logger.info(`Using explicit core source: ${coreSrcPath}`);
|
|
329
392
|
}
|
|
330
393
|
else {
|
|
394
|
+
// Default: assume core source is at <corePath>/src/core
|
|
331
395
|
coreSrcPath = path.join(corePath, "src", "core");
|
|
332
|
-
// Fallback: some repos
|
|
396
|
+
// Fallback: some repos have different structures
|
|
397
|
+
// If the default path doesn't exist, try alternative locations
|
|
333
398
|
if (!(await fs.pathExists(coreSrcPath)) &&
|
|
334
399
|
config.core &&
|
|
335
400
|
config.core.name) {
|
|
401
|
+
// Try 1: <corePath>/<repo-name>/src/core (nested repo structure)
|
|
336
402
|
const altNestedSrc = path.join(corePath, config.core.name, "src", "core");
|
|
403
|
+
// Try 2: <corePath>/<repo-name> (entire nested project as source)
|
|
337
404
|
const altRoot = path.join(corePath, config.core.name);
|
|
405
|
+
// Try 3: <corePath>/core (core directly in repo root)
|
|
406
|
+
const altCoreDir = path.join(corePath, "core");
|
|
338
407
|
if (await fs.pathExists(altNestedSrc)) {
|
|
408
|
+
// Found nested src/core structure
|
|
339
409
|
coreSrcPath = altNestedSrc;
|
|
340
410
|
logger.info(`Using nested core path: ${coreSrcPath}`);
|
|
341
411
|
}
|
|
342
412
|
else if (await fs.pathExists(altRoot)) {
|
|
413
|
+
// Found nested project root
|
|
343
414
|
coreSrcPath = altRoot;
|
|
344
415
|
logger.info(`Using project-root as core source: ${coreSrcPath}`);
|
|
345
416
|
}
|
|
417
|
+
else if (await fs.pathExists(altCoreDir)) {
|
|
418
|
+
// Found core directory in repo root
|
|
419
|
+
coreSrcPath = altCoreDir;
|
|
420
|
+
logger.info(`Using core directory in repo root: ${coreSrcPath}`);
|
|
421
|
+
}
|
|
346
422
|
else {
|
|
347
|
-
|
|
423
|
+
// None of the fallback paths exist
|
|
424
|
+
logger.error(`Core source not found at ${path.join(corePath, "src", "core")} or fallback locations (${altNestedSrc}, ${altRoot}, ${altCoreDir})`);
|
|
425
|
+
result.success = false;
|
|
426
|
+
return;
|
|
348
427
|
}
|
|
349
428
|
}
|
|
350
429
|
}
|
|
430
|
+
// Verify the final coreSrcPath exists
|
|
431
|
+
if (!(await fs.pathExists(coreSrcPath))) {
|
|
432
|
+
logger.error(`Core source path does not exist: ${coreSrcPath}`);
|
|
433
|
+
result.success = false;
|
|
434
|
+
return;
|
|
435
|
+
}
|
|
351
436
|
actions.push(`Overlay core: ${coreSrcPath} -> ${config.coreMountPath}`);
|
|
352
437
|
if (!dryRun) {
|
|
438
|
+
// Clean existing core directory before copying to ensure deleted files don't persist
|
|
439
|
+
if (await fs.pathExists(config.coreMountPath)) {
|
|
440
|
+
logger.info(`Cleaning existing core directory: ${config.coreMountPath}`);
|
|
441
|
+
await removePathWithRetries(config.coreMountPath, logger);
|
|
442
|
+
}
|
|
353
443
|
await fs.ensureDir(config.coreMountPath);
|
|
354
444
|
}
|
|
445
|
+
else {
|
|
446
|
+
// Log cleanup action in dry-run mode
|
|
447
|
+
if (await fs.pathExists(config.coreMountPath)) {
|
|
448
|
+
logger.debug(`[dry-run] Would clean: ${config.coreMountPath}`);
|
|
449
|
+
}
|
|
450
|
+
}
|
|
355
451
|
result.coreFilesCopied = await copyWithExcludes(coreSrcPath, config.coreMountPath, excludes, logger, dryRun);
|
|
356
452
|
if (!dryRun) {
|
|
357
453
|
logger.success(`Copied ${result.coreFilesCopied} files from core`);
|
|
358
454
|
}
|
|
455
|
+
// Step 2: Transform webpack config if enabled
|
|
456
|
+
const webpackTransformEnabled = config.webpackTransform?.enabled ?? true;
|
|
457
|
+
if (webpackTransformEnabled) {
|
|
458
|
+
actions.push("Transform webpack config for symlink support");
|
|
459
|
+
await transformWebpackConfig(config, logger, dryRun);
|
|
460
|
+
}
|
|
359
461
|
// Step 3: Symlink custom to src/core/custom
|
|
360
462
|
if (config.customPath && (await fs.pathExists(config.customPath))) {
|
|
361
463
|
actions.push(`Symlink custom: ${config.customDir} -> ${config.customMountPath}`);
|
|
@@ -377,7 +479,9 @@ async function buildBaseCoreCustom(config, logger, result, actions, excludes, dr
|
|
|
377
479
|
}
|
|
378
480
|
}
|
|
379
481
|
else if (config.customPath) {
|
|
380
|
-
logger.
|
|
482
|
+
logger.error(`Custom directory not found: ${config.customPath}`);
|
|
483
|
+
result.success = false;
|
|
484
|
+
return;
|
|
381
485
|
}
|
|
382
486
|
result.success = true;
|
|
383
487
|
}
|
package/dist/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
|