@openfn/cli 1.16.0 → 1.16.2
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/dist/process/runner.js +31 -17
- package/package.json +6 -6
package/dist/process/runner.js
CHANGED
|
@@ -2295,7 +2295,7 @@ ${project.workflows.map((w) => " - " + w.name).join("\n")}`;
|
|
|
2295
2295
|
var handler_default11 = projectsHandler;
|
|
2296
2296
|
|
|
2297
2297
|
// src/checkout/handler.ts
|
|
2298
|
-
import { Workspace as Workspace2 } from "@openfn/project";
|
|
2298
|
+
import Project5, { Workspace as Workspace2 } from "@openfn/project";
|
|
2299
2299
|
import path12 from "path";
|
|
2300
2300
|
import fs6 from "fs";
|
|
2301
2301
|
import { rimraf as rimraf2 } from "rimraf";
|
|
@@ -2306,15 +2306,24 @@ var checkoutHandler = async (options, logger) => {
|
|
|
2306
2306
|
logger.error("Command was run in an invalid openfn workspace");
|
|
2307
2307
|
return;
|
|
2308
2308
|
}
|
|
2309
|
-
const
|
|
2309
|
+
const { project: _, ...config } = workspace.getConfig() ?? {};
|
|
2310
|
+
let switchProject;
|
|
2311
|
+
if (/\.(yaml|json)$/.test(options.projectName)) {
|
|
2312
|
+
const filePath = path12.join(commandPath, options.projectName);
|
|
2313
|
+
logger.debug("Loading project from path ", filePath);
|
|
2314
|
+
switchProject = await Project5.from("path", filePath, {
|
|
2315
|
+
config
|
|
2316
|
+
});
|
|
2317
|
+
} else {
|
|
2318
|
+
switchProject = workspace.get(options.projectName);
|
|
2319
|
+
}
|
|
2310
2320
|
if (!switchProject) {
|
|
2311
2321
|
logger.error(
|
|
2312
2322
|
`Project with id/name ${options.projectName} not found in the workspace`
|
|
2313
2323
|
);
|
|
2314
2324
|
return;
|
|
2315
2325
|
}
|
|
2316
|
-
|
|
2317
|
-
await rimraf2(path12.join(commandPath, config?.workflowRoot || "workflows"));
|
|
2326
|
+
await rimraf2(path12.join(commandPath, config.workflowRoot ?? "workflows"));
|
|
2318
2327
|
const files = switchProject.serialize("fs");
|
|
2319
2328
|
for (const f in files) {
|
|
2320
2329
|
if (files[f]) {
|
|
@@ -2331,7 +2340,7 @@ var checkoutHandler = async (options, logger) => {
|
|
|
2331
2340
|
var handler_default12 = checkoutHandler;
|
|
2332
2341
|
|
|
2333
2342
|
// src/merge/handler.ts
|
|
2334
|
-
import
|
|
2343
|
+
import Project6, { Workspace as Workspace3 } from "@openfn/project";
|
|
2335
2344
|
import path13 from "path";
|
|
2336
2345
|
import { promises as fs7 } from "fs";
|
|
2337
2346
|
var mergeHandler = async (options, logger) => {
|
|
@@ -2341,32 +2350,37 @@ var mergeHandler = async (options, logger) => {
|
|
|
2341
2350
|
logger.error("Command was run in an invalid openfn workspace");
|
|
2342
2351
|
return;
|
|
2343
2352
|
}
|
|
2344
|
-
const
|
|
2345
|
-
if (!
|
|
2353
|
+
const targetProject = workspace.getActiveProject();
|
|
2354
|
+
if (!targetProject) {
|
|
2346
2355
|
logger.error(`No project currently checked out`);
|
|
2347
2356
|
return;
|
|
2348
2357
|
}
|
|
2349
|
-
|
|
2350
|
-
if (
|
|
2351
|
-
|
|
2352
|
-
|
|
2353
|
-
);
|
|
2358
|
+
let sourceProject;
|
|
2359
|
+
if (/\.(yaml|json)$/.test(options.projectName)) {
|
|
2360
|
+
const filePath = path13.join(commandPath, options.projectName);
|
|
2361
|
+
logger.debug("Loading source project from path ", filePath);
|
|
2362
|
+
sourceProject = await Project6.from("path", filePath);
|
|
2363
|
+
} else {
|
|
2364
|
+
sourceProject = workspace.get(options.projectName);
|
|
2365
|
+
}
|
|
2366
|
+
if (!sourceProject) {
|
|
2367
|
+
logger.error(`Project "${options.projectName}" not found in the workspace`);
|
|
2354
2368
|
return;
|
|
2355
2369
|
}
|
|
2356
|
-
if (
|
|
2370
|
+
if (targetProject.name === sourceProject.name) {
|
|
2357
2371
|
logger.error("Merging into the same project not allowed");
|
|
2358
2372
|
return;
|
|
2359
2373
|
}
|
|
2360
|
-
if (!
|
|
2374
|
+
if (!targetProject.name) {
|
|
2361
2375
|
logger.error("The checked out project has no name/id");
|
|
2362
2376
|
return;
|
|
2363
2377
|
}
|
|
2364
|
-
const finalPath = workspace.getProjectPath(
|
|
2378
|
+
const finalPath = workspace.getProjectPath(targetProject.name);
|
|
2365
2379
|
if (!finalPath) {
|
|
2366
2380
|
logger.error("Path to checked out project not found.");
|
|
2367
2381
|
return;
|
|
2368
2382
|
}
|
|
2369
|
-
const final =
|
|
2383
|
+
const final = Project6.merge(sourceProject, targetProject, {
|
|
2370
2384
|
removeUnmapped: options.removeUnmapped,
|
|
2371
2385
|
workflowMappings: options.workflowMappings
|
|
2372
2386
|
});
|
|
@@ -2381,7 +2395,7 @@ var mergeHandler = async (options, logger) => {
|
|
|
2381
2395
|
logger
|
|
2382
2396
|
);
|
|
2383
2397
|
logger.success(
|
|
2384
|
-
`Project ${
|
|
2398
|
+
`Project ${sourceProject.name} has been merged into Project ${targetProject.name} successfully`
|
|
2385
2399
|
);
|
|
2386
2400
|
};
|
|
2387
2401
|
var handler_default13 = mergeHandler;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openfn/cli",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.2",
|
|
4
4
|
"description": "CLI devtools for the OpenFn toolchain",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=18",
|
|
@@ -47,13 +47,13 @@
|
|
|
47
47
|
"undici": "7.12.0",
|
|
48
48
|
"ws": "^8.18.3",
|
|
49
49
|
"yargs": "^17.7.2",
|
|
50
|
-
"@openfn/compiler": "1.1.
|
|
51
|
-
"@openfn/deploy": "0.11.3",
|
|
50
|
+
"@openfn/compiler": "1.1.5",
|
|
52
51
|
"@openfn/describe-package": "0.1.5",
|
|
53
|
-
"@openfn/lexicon": "^1.2.
|
|
54
|
-
"@openfn/
|
|
52
|
+
"@openfn/lexicon": "^1.2.4",
|
|
53
|
+
"@openfn/deploy": "0.11.3",
|
|
55
54
|
"@openfn/runtime": "1.7.3",
|
|
56
|
-
"@openfn/project": "^0.
|
|
55
|
+
"@openfn/project": "^0.5.1",
|
|
56
|
+
"@openfn/logger": "1.0.6"
|
|
57
57
|
},
|
|
58
58
|
"files": [
|
|
59
59
|
"dist",
|