spec-controller 0.1.0-alpha.54 → 0.1.0-alpha.55
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/messages.d.ts +7 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +10 -0
- package/dist/messages.js.map +1 -1
- package/dist/run-management/keptRun.d.ts +2 -2
- package/dist/run-management/keptRun.d.ts.map +1 -1
- package/dist/run-management/keptRun.js +7 -8
- package/dist/run-management/keptRun.js.map +1 -1
- package/dist/run-management/resolveRunInputs.d.ts.map +1 -1
- package/dist/run-management/resolveRunInputs.js +13 -29
- package/dist/run-management/resolveRunInputs.js.map +1 -1
- package/package.json +2 -2
package/dist/messages.d.ts
CHANGED
|
@@ -10,13 +10,19 @@ export declare enum AppMessage {
|
|
|
10
10
|
CouldNotBeRead = 8,
|
|
11
11
|
CouldNotBeReadAt = 9,
|
|
12
12
|
UsageError = 10,
|
|
13
|
-
GitExited = 11
|
|
13
|
+
GitExited = 11,
|
|
14
|
+
StoredRunDirectoryNotCreated = 12,
|
|
15
|
+
StoredRunManifestNotWritten = 13,
|
|
16
|
+
FormatNamesStoredRunManifest = 14,
|
|
17
|
+
StoredRunReadsItsManifest = 15
|
|
14
18
|
}
|
|
15
19
|
interface AppMessageParams {
|
|
16
20
|
[AppMessage.CouldNotBeRead]: [subject: string, reason: string];
|
|
17
21
|
[AppMessage.CouldNotBeReadAt]: [subject: string, path: string, reason: string];
|
|
18
22
|
[AppMessage.UsageError]: [command: string, message: string];
|
|
19
23
|
[AppMessage.GitExited]: [args: readonly string[], status: number | null, said: string];
|
|
24
|
+
[AppMessage.FormatNamesStoredRunManifest]: [formatPath: string, manifestPath: string, runDir: string];
|
|
25
|
+
[AppMessage.StoredRunReadsItsManifest]: [manifestPath: string, inputPath: string, inputSubject: string];
|
|
20
26
|
}
|
|
21
27
|
export type AppMessages = {
|
|
22
28
|
readonly [C in AppMessage]: (...params: C extends keyof AppMessageParams ? AppMessageParams[C] : []) => string;
|
package/dist/messages.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,OAAO,IAAA;IACP,UAAU,IAAA;IACV,IAAI,IAAA;IACJ,aAAa,IAAA;IACb,QAAQ,IAAA;IACR,WAAW,IAAA;IACX,aAAa,IAAA;IACb,gBAAgB,IAAA;IAChB,cAAc,IAAA;IACd,gBAAgB,IAAA;IAChB,UAAU,KAAA;IACV,SAAS,KAAA;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,OAAO,IAAA;IACP,UAAU,IAAA;IACV,IAAI,IAAA;IACJ,aAAa,IAAA;IACb,QAAQ,IAAA;IACR,WAAW,IAAA;IACX,aAAa,IAAA;IACb,gBAAgB,IAAA;IAChB,cAAc,IAAA;IACd,gBAAgB,IAAA;IAChB,UAAU,KAAA;IACV,SAAS,KAAA;IACT,4BAA4B,KAAA;IAC5B,2BAA2B,KAAA;IAC3B,4BAA4B,KAAA;IAC5B,yBAAyB,KAAA;CAC1B;AAED,UAAU,gBAAgB;IACxB,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/E,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtG,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;CACzG;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,CAAC,IAAI,UAAU,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,MAAM;CAC/G,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAqB1B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;CASb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEtE,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAEtC,CAAC"}
|
package/dist/messages.js
CHANGED
|
@@ -12,6 +12,10 @@ export var AppMessage;
|
|
|
12
12
|
AppMessage[AppMessage["CouldNotBeReadAt"] = 9] = "CouldNotBeReadAt";
|
|
13
13
|
AppMessage[AppMessage["UsageError"] = 10] = "UsageError";
|
|
14
14
|
AppMessage[AppMessage["GitExited"] = 11] = "GitExited";
|
|
15
|
+
AppMessage[AppMessage["StoredRunDirectoryNotCreated"] = 12] = "StoredRunDirectoryNotCreated";
|
|
16
|
+
AppMessage[AppMessage["StoredRunManifestNotWritten"] = 13] = "StoredRunManifestNotWritten";
|
|
17
|
+
AppMessage[AppMessage["FormatNamesStoredRunManifest"] = 14] = "FormatNamesStoredRunManifest";
|
|
18
|
+
AppMessage[AppMessage["StoredRunReadsItsManifest"] = 15] = "StoredRunReadsItsManifest";
|
|
15
19
|
})(AppMessage || (AppMessage = {}));
|
|
16
20
|
export const APP_MESSAGES = {
|
|
17
21
|
[AppMessage.History]: () => "the repository's history",
|
|
@@ -26,6 +30,12 @@ export const APP_MESSAGES = {
|
|
|
26
30
|
[AppMessage.CouldNotBeReadAt]: (subject, path, reason) => `${subject} could not be read: ${path} (${reason})`,
|
|
27
31
|
[AppMessage.UsageError]: (command, message) => `spec-controller ${command}: usage error — ${message}`,
|
|
28
32
|
[AppMessage.GitExited]: (args, status, said) => `git ${args[0]} exited ${status}: ${said}`,
|
|
33
|
+
[AppMessage.StoredRunDirectoryNotCreated]: () => "The stored run's directory could not be created",
|
|
34
|
+
[AppMessage.StoredRunManifestNotWritten]: () => "The stored run's run.yaml could not be written",
|
|
35
|
+
[AppMessage.FormatNamesStoredRunManifest]: (formatPath, manifestPath, runDir) => `A --format output names ${formatPath}, which is this stored run's own ${manifestPath}. ` +
|
|
36
|
+
`Give the report a path outside ${runDir}.`,
|
|
37
|
+
[AppMessage.StoredRunReadsItsManifest]: (manifestPath, inputPath, inputSubject) => `A file this stored run reads is its own ${manifestPath}: ${inputPath} is ${inputSubject}. ` +
|
|
38
|
+
`Give the store a root outside the files the run reads.`,
|
|
29
39
|
};
|
|
30
40
|
export const Unreadable = {
|
|
31
41
|
History: AppMessage.History,
|
package/dist/messages.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,7 @@ import { type ReadInput } from "../outputLocation.js";
|
|
|
2
2
|
export declare const RECONCILIATION_DOCUMENT = "spec-reconciliation.md";
|
|
3
3
|
export declare const RECONCILIATION_JSON = "spec-reconciliation.json";
|
|
4
4
|
export declare const RUN_MANIFEST = "run.yaml";
|
|
5
|
-
|
|
6
|
-
export type RunMode = "balance" | "analyse" | "migrate";
|
|
5
|
+
type RunMode = "balance" | "analyse" | "migrate";
|
|
7
6
|
export interface RunManifestMeta {
|
|
8
7
|
readonly sourceSha: string;
|
|
9
8
|
readonly toolSha: string;
|
|
@@ -53,4 +52,5 @@ export declare function resolveRunId(options: ResolveRunIdOptions): string;
|
|
|
53
52
|
export declare function planRunManifest(input: RunManifestInput): RunManifest;
|
|
54
53
|
export declare function serialiseRunManifest(manifest: RunManifest): string;
|
|
55
54
|
export declare function executeKeptRun(spec: KeptRunSpec, meta: RunManifestMeta, route: RouteOutputs): KeptRunPlan | undefined;
|
|
55
|
+
export {};
|
|
56
56
|
//# sourceMappingURL=keptRun.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keptRun.d.ts","sourceRoot":"","sources":["../../src/run-management/keptRun.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keptRun.d.ts","sourceRoot":"","sources":["../../src/run-management/keptRun.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAExG,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAE9D,eAAO,MAAM,YAAY,aAAa,CAAC;AAIvC,KAAK,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE;QAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;KACjC,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;CACzC;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC;AAEvE,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAO1D;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAKjE;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,WAAW,CAiBpE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAElE;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,YAAY,GAClB,WAAW,GAAG,SAAS,CAoBzB"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { mkdirSync, writeFileSync } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { stringify } from "yaml";
|
|
4
|
+
import { APP_MESSAGES, AppMessage } from "../messages.js";
|
|
4
5
|
import { firstSharingFile, inputAt, refuse, writeOrRefuse } from "../outputLocation.js";
|
|
5
6
|
export const RECONCILIATION_DOCUMENT = "spec-reconciliation.md";
|
|
6
7
|
export const RECONCILIATION_JSON = "spec-reconciliation.json";
|
|
7
8
|
export const RUN_MANIFEST = "run.yaml";
|
|
8
|
-
|
|
9
|
+
const RUN_MANIFEST_SCHEMA_VERSION = 2;
|
|
9
10
|
export function planKeptRun(spec) {
|
|
10
11
|
const runDir = join(spec.storeRoot, spec.target, spec.runId);
|
|
11
12
|
return {
|
|
@@ -21,7 +22,7 @@ export function resolveRunId(options) {
|
|
|
21
22
|
return formatRunTimestamp(options.now);
|
|
22
23
|
}
|
|
23
24
|
function formatRunTimestamp(instant) {
|
|
24
|
-
return instant.toISOString().replace(/\.\d+Z
|
|
25
|
+
return instant.toISOString().replace(/\.\d+Z/, "Z").replace(/:/g, "-");
|
|
25
26
|
}
|
|
26
27
|
export function planRunManifest(input) {
|
|
27
28
|
return {
|
|
@@ -46,22 +47,20 @@ export function serialiseRunManifest(manifest) {
|
|
|
46
47
|
}
|
|
47
48
|
export function executeKeptRun(spec, meta, route) {
|
|
48
49
|
const plan = planKeptRun(spec);
|
|
49
|
-
writeOrRefuse(
|
|
50
|
+
writeOrRefuse(APP_MESSAGES[AppMessage.StoredRunDirectoryNotCreated](), plan.runDir, () => mkdirSync(plan.runDir, { recursive: true }));
|
|
50
51
|
const manifestPath = join(plan.runDir, RUN_MANIFEST);
|
|
51
52
|
const sharesManifest = firstSharingFile(manifestPath, spec.formatPaths ?? []);
|
|
52
53
|
if (sharesManifest !== undefined) {
|
|
53
|
-
refuse(
|
|
54
|
-
`Give the report a path outside ${plan.runDir}.`);
|
|
54
|
+
refuse(APP_MESSAGES[AppMessage.FormatNamesStoredRunManifest](sharesManifest, manifestPath, plan.runDir));
|
|
55
55
|
}
|
|
56
56
|
const readManifest = inputAt(manifestPath, spec.inputs ?? []);
|
|
57
57
|
if (readManifest !== undefined) {
|
|
58
|
-
refuse(
|
|
59
|
-
`Give the store a root outside the files the run reads.`);
|
|
58
|
+
refuse(APP_MESSAGES[AppMessage.StoredRunReadsItsManifest](manifestPath, readManifest.path, readManifest.subject));
|
|
60
59
|
}
|
|
61
60
|
if (!route([`md:${plan.documentPath}`, `json:${plan.reconciliationJsonPath}`]))
|
|
62
61
|
return undefined;
|
|
63
62
|
const manifest = planRunManifest({ runId: spec.runId, target: spec.target, ...meta });
|
|
64
|
-
writeOrRefuse(
|
|
63
|
+
writeOrRefuse(APP_MESSAGES[AppMessage.StoredRunManifestNotWritten](), manifestPath, () => writeFileSync(manifestPath, serialiseRunManifest(manifest)));
|
|
65
64
|
return plan;
|
|
66
65
|
}
|
|
67
66
|
//# sourceMappingURL=keptRun.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keptRun.js","sourceRoot":"","sources":["../../src/run-management/keptRun.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAkB,MAAM,sBAAsB,CAAC;AAExG,MAAM,CAAC,MAAM,uBAAuB,GAAG,wBAAwB,CAAC;AAChE,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AAEvC,MAAM,
|
|
1
|
+
{"version":3,"file":"keptRun.js","sourceRoot":"","sources":["../../src/run-management/keptRun.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveRunInputs.d.ts","sourceRoot":"","sources":["../../src/run-management/resolveRunInputs.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"resolveRunInputs.d.ts","sourceRoot":"","sources":["../../src/run-management/resolveRunInputs.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,GAAG,IAAI,CAQhG;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,YAAY,CAQ3G;AAgCD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAMrE"}
|
|
@@ -6,20 +6,10 @@ export function resolveSourceSha(opts) {
|
|
|
6
6
|
if (opts.sourceSha !== undefined && opts.sourceSha.trim() !== "") {
|
|
7
7
|
return opts.sourceSha.trim();
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const out = execFileSync("git", ["-C", dir, "rev-parse", "HEAD"], {
|
|
14
|
-
encoding: "utf8",
|
|
15
|
-
stdio: ["ignore", "pipe", "ignore"],
|
|
16
|
-
});
|
|
17
|
-
const sha = out.trim();
|
|
18
|
-
return sha === "" ? null : sha;
|
|
19
|
-
}
|
|
20
|
-
catch {
|
|
21
|
-
return null;
|
|
22
|
-
}
|
|
9
|
+
const dir = opts.targetDir !== undefined && opts.targetDir.trim() !== ""
|
|
10
|
+
? opts.targetDir
|
|
11
|
+
: undefined;
|
|
12
|
+
return readGit(dir, ["rev-parse", "HEAD"]);
|
|
23
13
|
}
|
|
24
14
|
export function resolveToolIdentity(opts = {}) {
|
|
25
15
|
const toolDir = opts.toolDir !== undefined && opts.toolDir.trim() !== ""
|
|
@@ -33,17 +23,7 @@ export function resolveToolIdentity(opts = {}) {
|
|
|
33
23
|
function resolveToolSha(toolDir) {
|
|
34
24
|
if (toolDir.split(sep).includes("node_modules"))
|
|
35
25
|
return null;
|
|
36
|
-
|
|
37
|
-
const out = execFileSync("git", ["-C", toolDir, "rev-parse", "HEAD"], {
|
|
38
|
-
encoding: "utf8",
|
|
39
|
-
stdio: ["ignore", "pipe", "ignore"],
|
|
40
|
-
});
|
|
41
|
-
const sha = out.trim();
|
|
42
|
-
return sha === "" ? null : sha;
|
|
43
|
-
}
|
|
44
|
-
catch {
|
|
45
|
-
return null;
|
|
46
|
-
}
|
|
26
|
+
return readGit(toolDir, ["rev-parse", "HEAD"]);
|
|
47
27
|
}
|
|
48
28
|
function resolveToolVersion(packageJsonPath) {
|
|
49
29
|
if (packageJsonPath === null)
|
|
@@ -77,16 +57,20 @@ export function resolveTargetRoot(opts) {
|
|
|
77
57
|
return process.cwd();
|
|
78
58
|
}
|
|
79
59
|
const targetDir = dirname(opts.features);
|
|
60
|
+
return readGit(targetDir, ["rev-parse", "--show-toplevel"]) ?? targetDir;
|
|
61
|
+
}
|
|
62
|
+
// An undefined dir means the working directory. It is read inside the try because
|
|
63
|
+
// process.cwd() throws once that directory is removed, which must read as no output.
|
|
64
|
+
function readGit(dir, args) {
|
|
80
65
|
try {
|
|
81
|
-
const out = execFileSync("git", ["-C",
|
|
66
|
+
const out = execFileSync("git", ["-C", dir ?? process.cwd(), ...args], {
|
|
82
67
|
encoding: "utf8",
|
|
83
68
|
stdio: ["ignore", "pipe", "ignore"],
|
|
84
69
|
});
|
|
85
|
-
|
|
86
|
-
return root === "" ? targetDir : root;
|
|
70
|
+
return out.trim() || null;
|
|
87
71
|
}
|
|
88
72
|
catch {
|
|
89
|
-
return
|
|
73
|
+
return null;
|
|
90
74
|
}
|
|
91
75
|
}
|
|
92
76
|
//# sourceMappingURL=resolveRunInputs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveRunInputs.js","sourceRoot":"","sources":["../../src/run-management/resolveRunInputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,gBAAgB,CAAC,IAAgD;IAC/E,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IACD,
|
|
1
|
+
{"version":3,"file":"resolveRunInputs.js","sourceRoot":"","sources":["../../src/run-management/resolveRunInputs.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "spec-controller",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.55",
|
|
4
4
|
"description": "Reconcile the behaviour your scenarios name against the evidence that actually ran — the deterministic `balance` CLI.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"reconciliation",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"@cucumber/gherkin": "^41.0.0",
|
|
26
26
|
"@cucumber/messages": "^34.0.1",
|
|
27
27
|
"yaml": "^2.9.0",
|
|
28
|
-
"@3f-consulting/spec-controller-core": "0.1.0-alpha.
|
|
28
|
+
"@3f-consulting/spec-controller-core": "0.1.0-alpha.55"
|
|
29
29
|
},
|
|
30
30
|
"publishConfig": {
|
|
31
31
|
"access": "public"
|