build-raptor 0.131.0 → 0.133.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/dist/deps/brand/brand.d.ts +5 -0
- package/dist/deps/brand/brand.js +3 -0
- package/dist/deps/brand/index.d.ts +1 -0
- package/dist/deps/brand/index.js +18 -0
- package/dist/deps/build-failed-error/build-failed-error.d.ts +14 -0
- package/dist/deps/build-failed-error/build-failed-error.js +13 -0
- package/dist/deps/build-failed-error/index.d.ts +1 -0
- package/dist/deps/build-failed-error/index.js +18 -0
- package/dist/deps/build-raptor-api/build-raptor-api.d.ts +351 -0
- package/dist/deps/build-raptor-api/build-raptor-api.js +132 -0
- package/dist/deps/build-raptor-api/index.d.ts +2 -0
- package/dist/deps/build-raptor-api/index.js +19 -0
- package/dist/deps/build-raptor-api/step-by-step-processor.d.ts +35 -0
- package/dist/deps/build-raptor-api/step-by-step-processor.js +3 -0
- package/dist/deps/build-raptor-core/breakdown.d.ts +18 -0
- package/dist/deps/build-raptor-core/breakdown.js +99 -0
- package/dist/deps/build-raptor-core/build-raptor-config.d.ts +21 -0
- package/dist/deps/build-raptor-core/build-raptor-config.js +25 -0
- package/dist/deps/build-raptor-core/default-asset-publisher.d.ts +10 -0
- package/dist/deps/build-raptor-core/default-asset-publisher.js +16 -0
- package/dist/deps/build-raptor-core/engine-bootstrapper.d.ts +50 -0
- package/dist/deps/build-raptor-core/engine-bootstrapper.js +200 -0
- package/dist/deps/build-raptor-core/engine-event-scheme.d.ts +20 -0
- package/dist/deps/build-raptor-core/engine-event-scheme.js +3 -0
- package/dist/deps/build-raptor-core/engine.d.ts +66 -0
- package/dist/deps/build-raptor-core/engine.js +285 -0
- package/dist/deps/build-raptor-core/examplify-zod.d.ts +93 -0
- package/dist/deps/build-raptor-core/examplify-zod.js +257 -0
- package/dist/deps/build-raptor-core/execution-plan.d.ts +20 -0
- package/dist/deps/build-raptor-core/execution-plan.js +66 -0
- package/dist/deps/build-raptor-core/execution-record.d.ts +17 -0
- package/dist/deps/build-raptor-core/execution-record.js +3 -0
- package/dist/deps/build-raptor-core/execution-type.d.ts +2 -0
- package/dist/deps/build-raptor-core/execution-type.js +3 -0
- package/dist/deps/build-raptor-core/find-repo-dir.d.ts +1 -0
- package/dist/deps/build-raptor-core/find-repo-dir.js +27 -0
- package/dist/deps/build-raptor-core/fingerprint-ledger.d.ts +33 -0
- package/dist/deps/build-raptor-core/fingerprint-ledger.js +164 -0
- package/dist/deps/build-raptor-core/fingerprint.d.ts +3 -0
- package/dist/deps/build-raptor-core/fingerprint.js +13 -0
- package/dist/deps/build-raptor-core/fingerprinter.d.ts +15 -0
- package/dist/deps/build-raptor-core/fingerprinter.js +122 -0
- package/dist/deps/build-raptor-core/hasher.d.ts +21 -0
- package/dist/deps/build-raptor-core/hasher.js +93 -0
- package/dist/deps/build-raptor-core/index.d.ts +9 -0
- package/dist/deps/build-raptor-core/index.js +26 -0
- package/dist/deps/build-raptor-core/model.d.ts +17 -0
- package/dist/deps/build-raptor-core/model.js +40 -0
- package/dist/deps/build-raptor-core/nop-asset-publisher.d.ts +6 -0
- package/dist/deps/build-raptor-core/nop-asset-publisher.js +12 -0
- package/dist/deps/build-raptor-core/performance-report.d.ts +5 -0
- package/dist/deps/build-raptor-core/performance-report.js +3 -0
- package/dist/deps/build-raptor-core/phase.d.ts +1 -0
- package/dist/deps/build-raptor-core/phase.js +3 -0
- package/dist/deps/build-raptor-core/planner.d.ts +12 -0
- package/dist/deps/build-raptor-core/planner.js +43 -0
- package/dist/deps/build-raptor-core/purger.d.ts +11 -0
- package/dist/deps/build-raptor-core/purger.js +65 -0
- package/dist/deps/build-raptor-core/slot-index.d.ts +6 -0
- package/dist/deps/build-raptor-core/slot-index.js +17 -0
- package/dist/deps/build-raptor-core/step-by-step-transmitter.d.ts +15 -0
- package/dist/deps/build-raptor-core/step-by-step-transmitter.js +94 -0
- package/dist/deps/build-raptor-core/tar-stream.d.ts +20 -0
- package/dist/deps/build-raptor-core/tar-stream.js +194 -0
- package/dist/deps/build-raptor-core/task-executor.d.ts +32 -0
- package/dist/deps/build-raptor-core/task-executor.js +321 -0
- package/dist/deps/build-raptor-core/task-store-cli.d.ts +1 -0
- package/dist/deps/build-raptor-core/task-store-cli.js +61 -0
- package/dist/deps/build-raptor-core/task-store-event.d.ts +17 -0
- package/dist/deps/build-raptor-core/task-store-event.js +3 -0
- package/dist/deps/build-raptor-core/task-store.d.ts +41 -0
- package/dist/deps/build-raptor-core/task-store.js +302 -0
- package/dist/deps/build-raptor-core/task-summary.d.ts +12 -0
- package/dist/deps/build-raptor-core/task-summary.js +3 -0
- package/dist/deps/build-raptor-core/task-tracker.d.ts +23 -0
- package/dist/deps/build-raptor-core/task-tracker.js +97 -0
- package/dist/deps/build-raptor-core/task.d.ts +30 -0
- package/dist/deps/build-raptor-core/task.js +90 -0
- package/dist/deps/build-raptor-core/updatable-task-output-registry.d.ts +13 -0
- package/dist/deps/build-raptor-core/updatable-task-output-registry.js +75 -0
- package/dist/deps/build-raptor-core/validate-task-infos.d.ts +3 -0
- package/dist/deps/build-raptor-core/validate-task-infos.js +53 -0
- package/dist/deps/build-raptor-core-testkit/build-raptor-core-testkit.d.ts +1 -0
- package/dist/deps/build-raptor-core-testkit/build-raptor-core-testkit.js +18 -0
- package/dist/deps/build-raptor-core-testkit/driver.d.ts +119 -0
- package/dist/deps/build-raptor-core-testkit/driver.js +305 -0
- package/dist/deps/build-raptor-core-testkit/index.d.ts +3 -0
- package/dist/deps/build-raptor-core-testkit/index.js +20 -0
- package/dist/deps/build-raptor-core-testkit/repo-protocol-testkit.d.ts +35 -0
- package/dist/deps/build-raptor-core-testkit/repo-protocol-testkit.js +226 -0
- package/dist/deps/build-raptor-core-testkit/simple-node-repo-protocol.d.ts +27 -0
- package/dist/deps/build-raptor-core-testkit/simple-node-repo-protocol.js +140 -0
- package/dist/deps/build-run-id/build-run-id.d.ts +3 -0
- package/dist/deps/build-run-id/build-run-id.js +13 -0
- package/dist/deps/build-run-id/index.d.ts +1 -0
- package/dist/deps/build-run-id/index.js +18 -0
- package/dist/deps/core-types/core-types.d.ts +29 -0
- package/dist/deps/core-types/core-types.js +81 -0
- package/dist/deps/core-types/index.d.ts +1 -0
- package/dist/deps/core-types/index.js +18 -0
- package/dist/deps/logger/index.d.ts +1 -0
- package/dist/deps/logger/index.js +18 -0
- package/dist/deps/logger/logger.d.ts +26 -0
- package/dist/deps/logger/logger.js +152 -0
- package/dist/deps/misc/arrays.d.ts +7 -0
- package/dist/deps/misc/arrays.js +67 -0
- package/dist/deps/misc/camelize-record.d.ts +6 -0
- package/dist/deps/misc/camelize-record.js +16 -0
- package/dist/deps/misc/clean-directory.d.ts +4 -0
- package/dist/deps/misc/clean-directory.js +80 -0
- package/dist/deps/misc/constructs.d.ts +106 -0
- package/dist/deps/misc/constructs.js +131 -0
- package/dist/deps/misc/directory-scanner.d.ts +49 -0
- package/dist/deps/misc/directory-scanner.js +165 -0
- package/dist/deps/misc/executor.d.ts +39 -0
- package/dist/deps/misc/executor.js +59 -0
- package/dist/deps/misc/file-system-storage-client.d.ts +23 -0
- package/dist/deps/misc/file-system-storage-client.js +93 -0
- package/dist/deps/misc/folderify.d.ts +8 -0
- package/dist/deps/misc/folderify.js +86 -0
- package/dist/deps/misc/graph.d.ts +29 -0
- package/dist/deps/misc/graph.js +200 -0
- package/dist/deps/misc/in-memory-storage-client.d.ts +21 -0
- package/dist/deps/misc/in-memory-storage-client.js +75 -0
- package/dist/deps/misc/index.d.ts +20 -0
- package/dist/deps/misc/index.js +37 -0
- package/dist/deps/misc/int.d.ts +10 -0
- package/dist/deps/misc/int.js +29 -0
- package/dist/deps/misc/internal/graph-executor.d.ts +15 -0
- package/dist/deps/misc/internal/graph-executor.js +93 -0
- package/dist/deps/misc/maps.d.ts +29 -0
- package/dist/deps/misc/maps.js +47 -0
- package/dist/deps/misc/misc.d.ts +23 -0
- package/dist/deps/misc/misc.js +94 -0
- package/dist/deps/misc/object-map.d.ts +10 -0
- package/dist/deps/misc/object-map.js +26 -0
- package/dist/deps/misc/promises.d.ts +39 -0
- package/dist/deps/misc/promises.js +78 -0
- package/dist/deps/misc/records.d.ts +11 -0
- package/dist/deps/misc/records.js +40 -0
- package/dist/deps/misc/slurp-dir.d.ts +1 -0
- package/dist/deps/misc/slurp-dir.js +14 -0
- package/dist/deps/misc/storage-client.d.ts +12 -0
- package/dist/deps/misc/storage-client.js +3 -0
- package/dist/deps/misc/stream-to-buffer.d.ts +2 -0
- package/dist/deps/misc/stream-to-buffer.js +26 -0
- package/dist/deps/misc/strings.d.ts +12 -0
- package/dist/deps/misc/strings.js +68 -0
- package/dist/deps/misc/typed-publisher.d.ts +17 -0
- package/dist/deps/misc/typed-publisher.js +65 -0
- package/dist/deps/repo-protocol/index.d.ts +3 -0
- package/dist/deps/repo-protocol/index.js +20 -0
- package/dist/deps/repo-protocol/repo-protocol.d.ts +49 -0
- package/dist/deps/repo-protocol/repo-protocol.js +3 -0
- package/dist/deps/repo-protocol/task-info.d.ts +18 -0
- package/dist/deps/repo-protocol/task-info.js +3 -0
- package/dist/deps/repo-protocol/test-run-summary.d.ts +54 -0
- package/dist/deps/repo-protocol/test-run-summary.js +32 -0
- package/dist/deps/repo-protocol-toolbox/generate-task-infos.d.ts +5 -0
- package/dist/deps/repo-protocol-toolbox/generate-task-infos.js +26 -0
- package/dist/deps/repo-protocol-toolbox/index.d.ts +3 -0
- package/dist/deps/repo-protocol-toolbox/index.js +20 -0
- package/dist/deps/repo-protocol-toolbox/repo-protocol-toolbox.d.ts +10 -0
- package/dist/deps/repo-protocol-toolbox/repo-protocol-toolbox.js +90 -0
- package/dist/deps/repo-protocol-toolbox/task-definition.d.ts +14 -0
- package/dist/deps/repo-protocol-toolbox/task-definition.js +3 -0
- package/dist/deps/reporter-output/index.d.ts +1 -0
- package/dist/deps/reporter-output/index.js +18 -0
- package/dist/deps/reporter-output/reporter-output.d.ts +49 -0
- package/dist/deps/reporter-output/reporter-output.js +25 -0
- package/dist/deps/s3-storage-client/creds.d.ts +4 -0
- package/dist/deps/s3-storage-client/creds.js +3 -0
- package/dist/deps/s3-storage-client/get-s3-storage-client-factory.d.ts +3 -0
- package/dist/deps/s3-storage-client/get-s3-storage-client-factory.js +45 -0
- package/dist/deps/s3-storage-client/index.d.ts +2 -0
- package/dist/deps/s3-storage-client/index.js +19 -0
- package/dist/deps/s3-storage-client/main.d.ts +1 -0
- package/dist/deps/s3-storage-client/main.js +20 -0
- package/dist/deps/s3-storage-client/s3-storage-client.d.ts +25 -0
- package/dist/deps/s3-storage-client/s3-storage-client.js +134 -0
- package/dist/deps/task-name/index.d.ts +1 -0
- package/dist/deps/task-name/index.js +18 -0
- package/dist/deps/task-name/task-name.d.ts +17 -0
- package/dist/deps/task-name/task-name.js +44 -0
- package/dist/deps/unit-metadata/index.d.ts +1 -0
- package/dist/deps/unit-metadata/index.js +18 -0
- package/dist/deps/unit-metadata/unit-metadata.d.ts +14 -0
- package/dist/deps/unit-metadata/unit-metadata.js +32 -0
- package/dist/deps/yarn-repo-protocol/build-task-record.d.ts +61 -0
- package/dist/deps/yarn-repo-protocol/build-task-record.js +29 -0
- package/dist/deps/yarn-repo-protocol/generate-test-run-summary.d.ts +4 -0
- package/dist/deps/yarn-repo-protocol/generate-test-run-summary.js +26 -0
- package/dist/deps/yarn-repo-protocol/index.d.ts +2 -0
- package/dist/deps/yarn-repo-protocol/index.js +19 -0
- package/dist/deps/yarn-repo-protocol/rerun-list.d.ts +12 -0
- package/dist/deps/yarn-repo-protocol/rerun-list.js +6 -0
- package/dist/deps/yarn-repo-protocol/yarn-repo-protocol-config.d.ts +24 -0
- package/dist/deps/yarn-repo-protocol/yarn-repo-protocol-config.js +34 -0
- package/dist/deps/yarn-repo-protocol/yarn-repo-protocol.d.ts +82 -0
- package/dist/deps/yarn-repo-protocol/yarn-repo-protocol.js +1036 -0
- package/dist/src/build-raptor-cli.d.ts +60 -0
- package/dist/src/build-raptor-cli.js +514 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +20 -0
- package/dist/src/main.d.ts +2 -0
- package/dist/src/main.js +23 -0
- package/dist/src/register-asset-request.d.ts +18 -0
- package/dist/src/register-asset-request.js +11 -0
- package/dist/src/task-execution-visualizer.d.ts +17 -0
- package/dist/src/task-execution-visualizer.js +116 -0
- package/package.json +17 -14
- package/build-raptor.js +0 -7259
- package/index.d.ts +0 -22
- package/index.js +0 -7231
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { FolderifyRecipe } from 'misc';
|
|
2
|
+
import { ExitStatus, RepoProtocol } from 'repo-protocol';
|
|
3
|
+
import { TaskDefinition } from 'repo-protocol-toolbox';
|
|
4
|
+
import { TaskName } from 'task-name';
|
|
5
|
+
import { Run } from './driver';
|
|
6
|
+
type TaskLabel = string;
|
|
7
|
+
type CatalogSpec = {
|
|
8
|
+
readonly taskDefs?: readonly TaskDefinition[];
|
|
9
|
+
};
|
|
10
|
+
type TaskCallback = ((dir: string) => Promise<ExitStatus>) | ((dir: string) => ExitStatus);
|
|
11
|
+
/**
|
|
12
|
+
* Returns an array of task names which are the dependencies of the given input (also a task name).
|
|
13
|
+
*/
|
|
14
|
+
type DepFunc = (taskName: string) => string[];
|
|
15
|
+
export declare class RepoProtocolTestkit {
|
|
16
|
+
private readonly graphJson;
|
|
17
|
+
private spec?;
|
|
18
|
+
private map;
|
|
19
|
+
private countByTask;
|
|
20
|
+
private countByTaskInRun;
|
|
21
|
+
private readonly units;
|
|
22
|
+
constructor(graphJson: Record<string, string[]>, spec?: (CatalogSpec | DepFunc) | undefined);
|
|
23
|
+
changeCatalog(spec: CatalogSpec): void;
|
|
24
|
+
private assertUnitId;
|
|
25
|
+
countOf(unitId: string, taskKind: string, run?: Run): number;
|
|
26
|
+
countOf(run: Run): Record<TaskName, number>;
|
|
27
|
+
invokedAt(run: Run): TaskName[];
|
|
28
|
+
setTask(taskLabel: TaskLabel, cb: TaskCallback): void;
|
|
29
|
+
setTaskOutputs(taskLabel: TaskLabel, recipe: FolderifyRecipe): void;
|
|
30
|
+
setTaskFunction(taskLabel: TaskLabel, callback: (inputs: FolderifyRecipe) => FolderifyRecipe | Promise<FolderifyRecipe>): void;
|
|
31
|
+
setTaskResult(unitId: string, taskKind: 'test' | 'build', result: ExitStatus): void;
|
|
32
|
+
setTaskResult(taskLabel: TaskLabel, result: ExitStatus): void;
|
|
33
|
+
create(): RepoProtocol;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.RepoProtocolTestkit = void 0;
|
|
37
|
+
const core_types_1 = require("core-types");
|
|
38
|
+
const fse = __importStar(require("fs-extra"));
|
|
39
|
+
const misc_1 = require("misc");
|
|
40
|
+
const repo_protocol_toolbox_1 = require("repo-protocol-toolbox");
|
|
41
|
+
const task_name_1 = require("task-name");
|
|
42
|
+
const unit_metadata_1 = require("unit-metadata");
|
|
43
|
+
const zod_1 = require("zod");
|
|
44
|
+
function validate(input) {
|
|
45
|
+
new TaskInRunUtils().undo(input);
|
|
46
|
+
}
|
|
47
|
+
class TaskInRunUtils {
|
|
48
|
+
undo(input) {
|
|
49
|
+
const parsed = JSON.parse(input);
|
|
50
|
+
if (!Array.isArray(parsed) || parsed.length !== 2) {
|
|
51
|
+
throw new Error(`Bad TaskInRun value: <${input}>`);
|
|
52
|
+
}
|
|
53
|
+
const [taskName, buildRunId] = parsed;
|
|
54
|
+
return { taskName, buildRunId };
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function TaskInRun(...args) {
|
|
58
|
+
if (args.length === 2) {
|
|
59
|
+
const [tn, buildRunId] = args;
|
|
60
|
+
const ret = JSON.stringify([tn, buildRunId]);
|
|
61
|
+
validate(ret);
|
|
62
|
+
return ret;
|
|
63
|
+
}
|
|
64
|
+
if (args.length === 0) {
|
|
65
|
+
return new TaskInRunUtils();
|
|
66
|
+
}
|
|
67
|
+
(0, misc_1.shouldNeverHappen)(args);
|
|
68
|
+
}
|
|
69
|
+
function labelToTaskName(label) {
|
|
70
|
+
return (0, task_name_1.TaskName)().parse(label);
|
|
71
|
+
}
|
|
72
|
+
class RepoProtocolTestkit {
|
|
73
|
+
constructor(graphJson, spec) {
|
|
74
|
+
this.graphJson = graphJson;
|
|
75
|
+
this.spec = spec;
|
|
76
|
+
this.map = new Map();
|
|
77
|
+
this.countByTask = new Map();
|
|
78
|
+
this.countByTaskInRun = new Map();
|
|
79
|
+
this.units = Object.keys(graphJson).map(u => new unit_metadata_1.UnitMetadata(u, (0, unit_metadata_1.UnitId)(u)));
|
|
80
|
+
}
|
|
81
|
+
changeCatalog(spec) {
|
|
82
|
+
this.spec = spec;
|
|
83
|
+
}
|
|
84
|
+
assertUnitId(unitId) {
|
|
85
|
+
if (!this.units.find(at => at.id === unitId)) {
|
|
86
|
+
throw new Error(`Unit <${unitId}> not found in ${JSON.stringify(this.units)}`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
countOf(...args) {
|
|
90
|
+
if (args.length === 3 || args.length === 2) {
|
|
91
|
+
const [unitId, taskKind, run] = args;
|
|
92
|
+
this.assertUnitId(unitId);
|
|
93
|
+
const tn = (0, task_name_1.TaskName)(unitId, (0, task_name_1.TaskKind)(taskKind));
|
|
94
|
+
if (!run) {
|
|
95
|
+
return this.countByTask.get(tn) ?? 0;
|
|
96
|
+
}
|
|
97
|
+
return this.countByTaskInRun.get(TaskInRun(tn, run.buildRunId)) ?? 0;
|
|
98
|
+
}
|
|
99
|
+
if (args.length === 1) {
|
|
100
|
+
const [run] = args;
|
|
101
|
+
const triplets = [...this.countByTaskInRun.entries()].map(([k, count]) => {
|
|
102
|
+
const { buildRunId, taskName } = TaskInRun().undo(k);
|
|
103
|
+
return { buildRunId, taskName, count };
|
|
104
|
+
});
|
|
105
|
+
const pairs = triplets.filter(at => at.buildRunId === run.buildRunId).map(at => (0, misc_1.pair)(at.taskName, at.count));
|
|
106
|
+
return (0, misc_1.pairsToRecord)(pairs);
|
|
107
|
+
}
|
|
108
|
+
(0, misc_1.shouldNeverHappen)(args.length);
|
|
109
|
+
}
|
|
110
|
+
invokedAt(run) {
|
|
111
|
+
const pairs = (0, misc_1.recordToPairs)(this.countOf(run));
|
|
112
|
+
return pairs.filter(([_k, v]) => v > 0).map(([k, _v]) => k);
|
|
113
|
+
}
|
|
114
|
+
setTask(taskLabel, cb) {
|
|
115
|
+
const tn = (0, task_name_1.TaskName)().parse(taskLabel);
|
|
116
|
+
this.map.set(tn, cb);
|
|
117
|
+
}
|
|
118
|
+
setTaskOutputs(taskLabel, recipe) {
|
|
119
|
+
this.setTask(taskLabel, async (dir) => {
|
|
120
|
+
await (0, misc_1.writeRecipe)(dir, recipe);
|
|
121
|
+
return Promise.resolve('OK');
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
setTaskFunction(taskLabel, callback) {
|
|
125
|
+
this.setTask(taskLabel, async (dir) => {
|
|
126
|
+
const inputs = await (0, misc_1.slurpDir)(dir);
|
|
127
|
+
const recipe = await callback(inputs);
|
|
128
|
+
await (0, misc_1.writeRecipe)(dir, recipe);
|
|
129
|
+
return Promise.resolve('OK');
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
setTaskResult(...args) {
|
|
133
|
+
let tn;
|
|
134
|
+
let r;
|
|
135
|
+
if (args.length === 3) {
|
|
136
|
+
const [unitId, taskKind, result] = args;
|
|
137
|
+
tn = (0, task_name_1.TaskName)((0, unit_metadata_1.UnitId)(unitId), (0, task_name_1.TaskKind)(taskKind));
|
|
138
|
+
r = result;
|
|
139
|
+
}
|
|
140
|
+
else if (args.length === 2) {
|
|
141
|
+
const [label, result] = args;
|
|
142
|
+
tn = labelToTaskName(label);
|
|
143
|
+
r = result;
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
(0, misc_1.shouldNeverHappen)(args);
|
|
147
|
+
}
|
|
148
|
+
const { unitId } = (0, task_name_1.TaskName)().undo(tn);
|
|
149
|
+
this.assertUnitId(unitId);
|
|
150
|
+
this.map.set(tn, () => r);
|
|
151
|
+
}
|
|
152
|
+
create() {
|
|
153
|
+
const getGraph = () => {
|
|
154
|
+
const g = new misc_1.Graph(x => x);
|
|
155
|
+
for (const [dir, deps] of Object.entries(this.graphJson)) {
|
|
156
|
+
g.vertex((0, unit_metadata_1.UnitId)(dir));
|
|
157
|
+
for (const d of deps) {
|
|
158
|
+
g.edge((0, unit_metadata_1.UnitId)(dir), (0, unit_metadata_1.UnitId)(d));
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return g;
|
|
162
|
+
};
|
|
163
|
+
return new RepoProtocolImpl(this.units, {
|
|
164
|
+
getGraph,
|
|
165
|
+
map: this.map,
|
|
166
|
+
countByTask: this.countByTask,
|
|
167
|
+
countByTaskInRun: this.countByTaskInRun,
|
|
168
|
+
getCatalogSpec: () => this.spec,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
exports.RepoProtocolTestkit = RepoProtocolTestkit;
|
|
173
|
+
class RepoProtocolImpl {
|
|
174
|
+
constructor(units, state) {
|
|
175
|
+
this.units = units;
|
|
176
|
+
this.state = state;
|
|
177
|
+
this.rootDir = (0, core_types_1.RepoRoot)('/');
|
|
178
|
+
}
|
|
179
|
+
async initialize(rootDir) {
|
|
180
|
+
this.rootDir = rootDir;
|
|
181
|
+
}
|
|
182
|
+
getConfigSchema() {
|
|
183
|
+
return zod_1.z.object({});
|
|
184
|
+
}
|
|
185
|
+
async close() { }
|
|
186
|
+
async execute(tn, outputFile, buildRunId) {
|
|
187
|
+
(0, misc_1.mapIncrement)(this.state.countByTask, tn, 1);
|
|
188
|
+
(0, misc_1.mapIncrement)(this.state.countByTaskInRun, TaskInRun(tn, buildRunId), 1);
|
|
189
|
+
const taskCb = this.state.map.get(tn) ?? (() => 'OK');
|
|
190
|
+
const { unitId } = (0, task_name_1.TaskName)().undo(tn);
|
|
191
|
+
const u = this.units.find(u => u.id === unitId) ?? (0, misc_1.failMe)(`Unit not found (unit ID=${unitId})`);
|
|
192
|
+
const dir = this.rootDir.resolve(u.pathInRepo);
|
|
193
|
+
const v = await taskCb(dir);
|
|
194
|
+
await fse.writeFile(outputFile, `task ${tn} result is ${v}`);
|
|
195
|
+
return v;
|
|
196
|
+
}
|
|
197
|
+
async getGraph() {
|
|
198
|
+
return this.state.getGraph();
|
|
199
|
+
}
|
|
200
|
+
async getUnits() {
|
|
201
|
+
const ret = [...this.units];
|
|
202
|
+
const arr = await Promise.all(ret.map(async (u) => {
|
|
203
|
+
const exist = await fse.pathExists(this.rootDir.resolve(u.pathInRepo));
|
|
204
|
+
if (exist) {
|
|
205
|
+
return undefined;
|
|
206
|
+
}
|
|
207
|
+
return u;
|
|
208
|
+
}));
|
|
209
|
+
const filtered = arr.filter(Boolean);
|
|
210
|
+
if (filtered.length) {
|
|
211
|
+
throw new Error(`Missing folders for the following units: ${JSON.stringify(filtered)}`);
|
|
212
|
+
}
|
|
213
|
+
return ret;
|
|
214
|
+
}
|
|
215
|
+
async getTasks() {
|
|
216
|
+
const catalogSpec = this.state.getCatalogSpec();
|
|
217
|
+
if (catalogSpec && typeof catalogSpec !== 'function') {
|
|
218
|
+
return new repo_protocol_toolbox_1.TaskInfoGenerator().computeInfos(catalogSpec.taskDefs, this.units, this.state.getGraph());
|
|
219
|
+
}
|
|
220
|
+
const depFunc = typeof catalogSpec === 'function'
|
|
221
|
+
? catalogSpec // eslint-disable-line @typescript-eslint/consistent-type-assertions
|
|
222
|
+
: () => [];
|
|
223
|
+
return (0, repo_protocol_toolbox_1.generateTaskInfos)(this.units, this.state.getGraph(), depFunc, []);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwby1wcm90b2NvbC10ZXN0a2l0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlcG8tcHJvdG9jb2wtdGVzdGtpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSwyQ0FBcUM7QUFDckMsOENBQStCO0FBQy9CLCtCQVdhO0FBRWIsaUVBQTRGO0FBQzVGLHlDQUE4QztBQUM5QyxpREFBb0Q7QUFDcEQsNkJBQXVCO0FBTXZCLFNBQVMsUUFBUSxDQUFDLEtBQWE7SUFDN0IsSUFBSSxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7QUFDbEMsQ0FBQztBQUVELE1BQU0sY0FBYztJQUNsQixJQUFJLENBQUMsS0FBYTtRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbEQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsS0FBSyxHQUFHLENBQUMsQ0FBQTtRQUNwRCxDQUFDO1FBQ0QsTUFBTSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxNQUFNLENBQUE7UUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0NBQ0Y7QUFJRCxTQUFTLFNBQVMsQ0FBQyxHQUFHLElBQWlEO0lBQ3JFLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN0QixNQUFNLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQTtRQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUE7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
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { BuildRunId } from 'build-run-id';
|
|
2
|
+
import { PathInRepo, RepoRoot } from 'core-types';
|
|
3
|
+
import { Graph } from 'misc';
|
|
4
|
+
import { ExitStatus, RepoProtocol, TaskInfo } from 'repo-protocol';
|
|
5
|
+
import { TaskName } from 'task-name';
|
|
6
|
+
import { UnitId, UnitMetadata } from 'unit-metadata';
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
export declare class SimpleNodeRepoProtocol implements RepoProtocol {
|
|
9
|
+
private readonly pathToModulesDir;
|
|
10
|
+
private readonly buildOutputLocations;
|
|
11
|
+
private readonly catalog?;
|
|
12
|
+
constructor(pathToModulesDir?: PathInRepo, buildOutputLocations?: string[], catalog?: {
|
|
13
|
+
tasks: TaskInfo[];
|
|
14
|
+
} | undefined);
|
|
15
|
+
getConfigSchema(): z.AnyZodObject;
|
|
16
|
+
private units;
|
|
17
|
+
private graph;
|
|
18
|
+
private rootDir;
|
|
19
|
+
initialize(rootDir: RepoRoot): Promise<void>;
|
|
20
|
+
close(): Promise<void>;
|
|
21
|
+
private readPackageJsonAt;
|
|
22
|
+
execute(taskName: TaskName, outputFile: string, _buildRunId: BuildRunId): Promise<ExitStatus>;
|
|
23
|
+
getGraph(): Promise<Graph<UnitId>>;
|
|
24
|
+
private read;
|
|
25
|
+
getUnits(): Promise<UnitMetadata[]>;
|
|
26
|
+
getTasks(): Promise<TaskInfo[]>;
|
|
27
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.SimpleNodeRepoProtocol = void 0;
|
|
40
|
+
const core_types_1 = require("core-types");
|
|
41
|
+
const execa_1 = __importDefault(require("execa"));
|
|
42
|
+
const fse = __importStar(require("fs-extra"));
|
|
43
|
+
const misc_1 = require("misc");
|
|
44
|
+
const repo_protocol_toolbox_1 = require("repo-protocol-toolbox");
|
|
45
|
+
const task_name_1 = require("task-name");
|
|
46
|
+
const unit_metadata_1 = require("unit-metadata");
|
|
47
|
+
const util = __importStar(require("util"));
|
|
48
|
+
const zod_1 = require("zod");
|
|
49
|
+
class SimpleNodeRepoProtocol {
|
|
50
|
+
constructor(pathToModulesDir = (0, core_types_1.PathInRepo)('modules'), buildOutputLocations = [], catalog) {
|
|
51
|
+
this.pathToModulesDir = pathToModulesDir;
|
|
52
|
+
this.buildOutputLocations = buildOutputLocations;
|
|
53
|
+
this.catalog = catalog;
|
|
54
|
+
this.units = [];
|
|
55
|
+
this.graph = new misc_1.Graph(x => x);
|
|
56
|
+
this.rootDir = (0, core_types_1.RepoRoot)('/tmp');
|
|
57
|
+
}
|
|
58
|
+
getConfigSchema() {
|
|
59
|
+
return zod_1.z.object({});
|
|
60
|
+
}
|
|
61
|
+
async initialize(rootDir) {
|
|
62
|
+
this.rootDir = rootDir;
|
|
63
|
+
const list = await this.read();
|
|
64
|
+
this.units = list.map(at => new unit_metadata_1.UnitMetadata(at.pathInRepo.val, at.id));
|
|
65
|
+
const ids = new Set(this.units.map(at => at.id));
|
|
66
|
+
for (const at of list) {
|
|
67
|
+
this.graph.vertex(at.id);
|
|
68
|
+
const deps = { ...at.packageJson.dependencies, ...at.packageJson.devDependencies };
|
|
69
|
+
for (const dep of Object.keys(deps)) {
|
|
70
|
+
if (ids.has(dep)) {
|
|
71
|
+
this.graph.edge(at.id, (0, unit_metadata_1.UnitId)(dep));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
async close() {
|
|
77
|
+
this.units = [];
|
|
78
|
+
this.graph = new misc_1.Graph(x => x);
|
|
79
|
+
}
|
|
80
|
+
async readPackageJsonAt(pir) {
|
|
81
|
+
const resolved = this.rootDir.resolve(pir.expand('package.json'));
|
|
82
|
+
try {
|
|
83
|
+
const content = await fse.readFile(resolved, 'utf-8');
|
|
84
|
+
return JSON.parse(content);
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
throw new Error(`Failed to read package.json in ${resolved}: ${e}`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
async execute(taskName, outputFile, _buildRunId) {
|
|
91
|
+
const { taskKind, unitId } = (0, task_name_1.TaskName)().undo(taskName);
|
|
92
|
+
const unit = this.units.find(u => u.id === unitId) ?? (0, misc_1.failMe)(`unit not found (unit ID=${unitId})`);
|
|
93
|
+
const dir = this.rootDir.resolve(unit.pathInRepo);
|
|
94
|
+
const packageJson = await this.readPackageJsonAt(unit.pathInRepo);
|
|
95
|
+
const script = packageJson?.scripts[taskKind];
|
|
96
|
+
if (script === undefined) {
|
|
97
|
+
throw new Error(`Missing script for ${taskName}`);
|
|
98
|
+
}
|
|
99
|
+
const fd = await fse.open(outputFile, 'w');
|
|
100
|
+
try {
|
|
101
|
+
const p = await execa_1.default.command(script, { cwd: dir, stdout: fd, stderr: fd, reject: false, shell: true });
|
|
102
|
+
if (p.exitCode === 0) {
|
|
103
|
+
return 'OK';
|
|
104
|
+
}
|
|
105
|
+
return 'FAIL';
|
|
106
|
+
}
|
|
107
|
+
catch (e) {
|
|
108
|
+
throw new Error(`Crashed when running task ${taskName} in ${dir} (command: ${script}): ${util.inspect(e)}`);
|
|
109
|
+
}
|
|
110
|
+
finally {
|
|
111
|
+
await fse.close(fd);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async getGraph() {
|
|
115
|
+
return this.graph;
|
|
116
|
+
}
|
|
117
|
+
async read() {
|
|
118
|
+
const list = await fse.readdir(this.rootDir.resolve(this.pathToModulesDir));
|
|
119
|
+
return await (0, misc_1.promises)(list.map(async (name) => {
|
|
120
|
+
const pir = this.pathToModulesDir.expand(name);
|
|
121
|
+
const parsed = await this.readPackageJsonAt(pir);
|
|
122
|
+
return {
|
|
123
|
+
pathInRepo: pir,
|
|
124
|
+
id: (0, unit_metadata_1.UnitId)(parsed.name),
|
|
125
|
+
packageJson: parsed,
|
|
126
|
+
};
|
|
127
|
+
})).reify();
|
|
128
|
+
}
|
|
129
|
+
async getUnits() {
|
|
130
|
+
return this.units;
|
|
131
|
+
}
|
|
132
|
+
async getTasks() {
|
|
133
|
+
if (this.catalog) {
|
|
134
|
+
return this.catalog.tasks;
|
|
135
|
+
}
|
|
136
|
+
return (0, repo_protocol_toolbox_1.generateTaskInfos)(this.units, this.graph, () => [], this.buildOutputLocations);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
exports.SimpleNodeRepoProtocol = SimpleNodeRepoProtocol;
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLW5vZGUtcmVwby1wcm90b2NvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaW1wbGUtbm9kZS1yZXBvLXByb3RvY29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDJDQUFpRDtBQUNqRCxrREFBeUI7QUFDekIsOENBQStCO0FBQy9CLCtCQUE4QztBQUU5QyxpRUFBeUQ7QUFDekQseUNBQW9DO0FBQ3BDLGlEQUFvRDtBQUNwRCwyQ0FBNEI7QUFDNUIsNkJBQXVCO0FBRXZCLE1BQWEsc0JBQXNCO0lBQ2pDLFlBQ21CLG1CQUFtQixJQUFBLHVCQUFVLEVBQUMsU0FBUyxDQUFDLEVBQ3hDLHVCQUFpQyxFQUFFLEVBQ25DLE9BQStCO1FBRi9CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBd0I7UUFDeEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFlO1FBQ25DLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBTzFDLFVBQUssR0FBbUIsRUFBRSxDQUFBO1FBQzFCLFVBQUssR0FBa0IsSUFBSSxZQUFLLENBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNoRCxZQUFPLEdBQWEsSUFBQSxxQkFBUSxFQUFDLE1BQU0sQ0FBQyxDQUFBO0lBUnpDLENBQUM7SUFFSixlQUFlO1FBQ2IsT0FBTyxPQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ3JCLENBQUM7SUFNRCxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQWlCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksNEJBQVksQ0FBQyxF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
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BuildRunId = BuildRunId;
|
|
4
|
+
function validate(input) {
|
|
5
|
+
if (input.length === 0) {
|
|
6
|
+
throw new Error(`Bad BuildRunId: <${input}>`);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
function BuildRunId(input) {
|
|
10
|
+
validate(input);
|
|
11
|
+
return input;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtcnVuLWlkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J1aWxkLXJ1bi1pZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVVBLGdDQUdDO0FBVEQsU0FBUyxRQUFRLENBQUMsS0FBYTtJQUM3QixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsS0FBSyxHQUFHLENBQUMsQ0FBQTtJQUMvQyxDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQWdCLFVBQVUsQ0FBQyxLQUFhO0lBQ3RDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNmLE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './build-run-id';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./build-run-id"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlEQUE4QiJ9
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Brand } from 'brand';
|
|
2
|
+
export declare function RepoRoot(input: string): {
|
|
3
|
+
resolve: (pathInRepo?: PathInRepo) => string;
|
|
4
|
+
unresolve: (absolutePath: string) => PathInRepo;
|
|
5
|
+
toString: () => string;
|
|
6
|
+
toJSON: () => string;
|
|
7
|
+
};
|
|
8
|
+
export type RepoRoot = ReturnType<typeof RepoRoot>;
|
|
9
|
+
type Mark = Brand<string, 'PathInRepo'>;
|
|
10
|
+
export type PathInRepo = {
|
|
11
|
+
readonly mark: Mark;
|
|
12
|
+
val: string;
|
|
13
|
+
isPrefixOf(other: PathInRepo): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Returns a new PathInRepo object that points to a subdirectory of this path. Fails if "relativePath" tries to climb
|
|
16
|
+
* up.
|
|
17
|
+
* @param relativePath an addition to this path
|
|
18
|
+
*/
|
|
19
|
+
expand(relativePath: string): PathInRepo;
|
|
20
|
+
/**
|
|
21
|
+
* Similr to expand() but allows relative paths that climb up as long as they are still inside the repo
|
|
22
|
+
* @param relativePath an addition to this path
|
|
23
|
+
*/
|
|
24
|
+
to(relativePath: string): PathInRepo;
|
|
25
|
+
toJSON(): string;
|
|
26
|
+
toString(): string;
|
|
27
|
+
};
|
|
28
|
+
export declare function PathInRepo(input: string): PathInRepo;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.RepoRoot = RepoRoot;
|
|
37
|
+
exports.PathInRepo = PathInRepo;
|
|
38
|
+
const misc_1 = require("misc");
|
|
39
|
+
const path = __importStar(require("path"));
|
|
40
|
+
function RepoRoot(input) {
|
|
41
|
+
input = path.normalize(input);
|
|
42
|
+
if (!path.isAbsolute(input)) {
|
|
43
|
+
throw new Error(`Repo root must be absolute (got: ${input})`);
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
resolve: (pathInRepo) => (pathInRepo ? path.join(input, pathInRepo.val) : input),
|
|
47
|
+
unresolve: (absolutePath) => PathInRepo(path.relative(input, absolutePath)),
|
|
48
|
+
toString: () => input,
|
|
49
|
+
toJSON: () => input,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function PathInRepo(input) {
|
|
53
|
+
const val = norm(input);
|
|
54
|
+
if (val.startsWith('..')) {
|
|
55
|
+
throw new Error(`cannot go up outside of the repo (got: '${val}')`);
|
|
56
|
+
}
|
|
57
|
+
const isPrefixOf = (other) => other.val.startsWith(val);
|
|
58
|
+
return {
|
|
59
|
+
mark: '', // eslint-disable-line @typescript-eslint/consistent-type-assertions
|
|
60
|
+
val,
|
|
61
|
+
isPrefixOf,
|
|
62
|
+
expand: (relativePath) => {
|
|
63
|
+
if (val === '.') {
|
|
64
|
+
return PathInRepo(relativePath);
|
|
65
|
+
}
|
|
66
|
+
const ret = PathInRepo(path.normalize(path.join(val, relativePath)));
|
|
67
|
+
if (!isPrefixOf(ret)) {
|
|
68
|
+
throw new Error(`Cannot expand '${val}' to '${ret}'`);
|
|
69
|
+
}
|
|
70
|
+
return ret;
|
|
71
|
+
},
|
|
72
|
+
to: (relativePath) => {
|
|
73
|
+
const joined = path.normalize(path.join(val, relativePath));
|
|
74
|
+
return PathInRepo(joined);
|
|
75
|
+
},
|
|
76
|
+
toJSON: () => val,
|
|
77
|
+
toString: () => val,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
const norm = (s) => (0, misc_1.threeWaySplit)(path.normalize(s), () => false, c => c === '/').mid;
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUEsNEJBV0M7QUF3QkQsZ0NBOEJDO0FBcEVELCtCQUFvQztBQUNwQywyQ0FBNEI7QUFFNUIsU0FBZ0IsUUFBUSxDQUFDLEtBQWE7SUFDcEMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFDRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLENBQUMsVUFBdUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzdGLFNBQVMsRUFBRSxDQUFDLFlBQW9CLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNuRixRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSztRQUNyQixNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSztLQUNwQixDQUFBO0FBQ0gsQ0FBQztBQXdCRCxTQUFnQixVQUFVLENBQUMsS0FBYTtJQUN0QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFFdkIsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsR0FBRyxJQUFJLENBQUMsQ0FBQTtJQUNyRSxDQUFDO0lBRUQsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUVuRSxPQUFPO1FBQ0wsSUFBSSxFQUFFLEVBQVUsRUFBRSxvRUFBb0U7UUFDdEYsR0FBRztRQUNILFVBQVU7UUFDVixNQUFNLEVBQUUsQ0FBQyxZQUFvQixFQUFFLEVBQUU7WUFDL0IsSUFBSSxHQUFHLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ2hCLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFBO1lBQ2pDLENBQUM7WUFDRCxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDcEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixHQUFHLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQTtZQUN2RCxDQUFDO1lBQ0QsT0FBTyxHQUFHLENBQUE7UUFDWixDQUFDO1FBQ0QsRUFBRSxFQUFFLENBQUMsWUFBb0IsRUFBRSxFQUFFO1lBQzNCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQTtZQUMzRCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUMzQixDQUFDO1FBQ0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUc7UUFDakIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUc7S0FDcEIsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLElBQUksR0FBRyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQ3pCLElBQUEsb0JBQWEsRUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUNqQixHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQ1gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUNmLENBQUMsR0FBRyxDQUFBIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './core-types';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./core-types"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE0QiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './logger';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./logger"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF3QiJ9
|