build-raptor 0.116.0 → 0.118.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.
@@ -5,6 +5,7 @@ import { RepoProtocol } from 'repo-protocol';
5
5
  import { Breakdown } from './breakdown';
6
6
  import { EngineOptions } from './engine';
7
7
  import { EngineEventScheme } from './engine-event-scheme';
8
+ import { StepByStepTransmitter } from './step-by-step-transmitter';
8
9
  export interface TaskSelector {
9
10
  /**
10
11
  * units the units whose tasks are to be built. An empty array means "all units".
@@ -22,6 +23,7 @@ export declare class EngineBootstrapper {
22
23
  readonly storageClient: StorageClient;
23
24
  readonly repoProtocol: RepoProtocol;
24
25
  private readonly eventPublisher;
26
+ readonly transmitter: StepByStepTransmitter;
25
27
  readonly rootDir: {
26
28
  resolve: (pathInRepo?: PathInRepo | undefined) => string;
27
29
  unresolve: (absolutePath: string) => PathInRepo;
@@ -43,6 +43,7 @@ class EngineBootstrapper {
43
43
  this.repoProtocol = repoProtocol;
44
44
  this.eventPublisher = new misc_1.TypedPublisher();
45
45
  this.rootDir = (0, core_types_1.RepoRoot)(rootDir);
46
+ this.transmitter = new step_by_step_transmitter_1.StepByStepTransmitter(logger);
46
47
  }
47
48
  async makeEngine(selector, configFile, optionsSansConfig) {
48
49
  const taskOutputDir = (await Tmp.dir()).path;
@@ -54,8 +55,11 @@ class EngineBootstrapper {
54
55
  };
55
56
  const taskStore = new task_store_1.TaskStore(this.rootDir, this.storageClient, this.logger, this.eventPublisher);
56
57
  const stepByStepFile = path.join(options.buildRaptorDir, 'step-by-step.json');
57
- const transmitter = await step_by_step_transmitter_1.StepByStepTransmitter.create(stepByStepFile, options.stepByStepProcessorModuleName, this.logger);
58
- const engine = new engine_1.Engine(this.logger, this.rootDir, this.repoProtocol, taskStore, taskOutputDir, selector, this.eventPublisher, transmitter, options);
58
+ this.transmitter.setOutputFile(stepByStepFile);
59
+ if (options.stepByStepProcessorModuleName) {
60
+ this.transmitter.dynamicallyLoadProcessor(options.stepByStepProcessorModuleName);
61
+ }
62
+ const engine = new engine_1.Engine(this.logger, this.rootDir, this.repoProtocol, taskStore, taskOutputDir, selector, this.eventPublisher, this.transmitter, options);
59
63
  return engine;
60
64
  }
61
65
  readConfigFile(pathToConfigFile) {
@@ -148,4 +152,4 @@ function summarizeTask(t) {
148
152
  rootCause: t.record.rootCause,
149
153
  };
150
154
  }
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLWJvb3RzdHJhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbmdpbmUtYm9vdHN0cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBcUQ7QUFDckQsK0NBQXlDO0FBQ3pDLDJDQUFpRDtBQUNqRCx1Q0FBd0I7QUFDeEIsbUNBQWlFO0FBQ2pFLCtCQUF1RjtBQUN2RiwyQ0FBNEI7QUFFNUIsaURBQWtDO0FBQ2xDLDJDQUE0QjtBQUM1QiwyQ0FBNEI7QUFFNUIsMkNBQXVDO0FBQ3ZDLCtEQUF5RDtBQUN6RCxxQ0FBZ0Q7QUFFaEQseUVBQWtFO0FBRWxFLDZDQUF3QztBQWV4QyxNQUFhLGtCQUFrQjtJQUc3QixZQUNFLE9BQWUsRUFDTixFQUFVLEVBQ1YsTUFBYyxFQUNkLGFBQTRCLEVBQzVCLFlBQTBCO1FBSDFCLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFQcEIsbUJBQWMsR0FBRyxJQUFJLHFCQUFjLEVBQXFCLENBQUE7UUFTdkUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLHFCQUFRLEVBQUMsT0FBTyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVPLEtBQUssQ0FBQyxVQUFVLENBQ3RCLFFBQXNCLEVBQ3RCLFVBQThCLEVBQzlCLGlCQUFnRDtRQUVoRCxNQUFNLGFBQWEsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFBO1FBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7UUFDOUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUVBQWlFLGFBQWEsRUFBRSxDQUFDLENBQUE7UUFFbEcsTUFBTSxPQUFPLEdBQUc7WUFDZCxHQUFHLGlCQUFpQjtZQUNwQixNQUFNLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFBLHVCQUFVLEVBQUMsVUFBVSxJQUFJLG9CQUFvQixDQUFDLENBQUM7U0FDNUUsQ0FBQTtRQUVELE1BQU0sU0FBUyxHQUFHLElBQUksc0JBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUE7UUFFbkcsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDLENBQUE7UUFDN0UsTUFBTSxXQUFXLEdBQUcsTUFBTSxnREFBcUIsQ0FBQyxNQUFNLENBQ3BELGNBQWMsRUFDZCxPQUFPLENBQUMsNkJBQTZCLEVBQ3JDLElBQUksQ0FBQyxNQUFNLENBQ1osQ0FBQTtRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksZUFBTSxDQUN2QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLFlBQVksRUFDakIsU0FBUyxFQUNULGFBQWEsRUFDYixRQUFRLEVBQ1IsSUFBSSxDQUFDLGNBQWMsRUFDbkIsV0FBVyxFQUNYLE9BQU8sQ0FDUixDQUFBO1FBQ0QsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRU8sY0FBYyxDQUFDLGdCQUE0QjtRQUNqRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBQ2hELElBQUk7WUFDRixJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDckIsT0FBTyx1Q0FBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUE7YUFDbkM7WUFDRCxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUMzQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQ2xDLE9BQU8sdUNBQWlCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1NBQ3ZDO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQTtTQUMvRDtJQUNILENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUE7SUFDNUIsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxJQUFBLHlCQUFVLEVBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDOUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBc0IsRUFBRSxVQUE4QixFQUFFLE9BQXNDO1FBQzdHLElBQUk7WUFDRixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7WUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDbEYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDbkUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFBO1lBQ3ZDLE9BQU8sS0FBSyxJQUFJLEVBQUU7Z0JBQ2hCLElBQUk7b0JBQ0YsTUFBTSxPQUFPLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFBO29CQUM1QyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7b0JBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSx5QkFBeUIsQ0FBQyxDQUFBO29CQUMzRixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFBO29CQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7b0JBQ3JFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7b0JBRWxHLElBQUksVUFBVSxFQUFFO3dCQUNkLE1BQU0sTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFBO3FCQUM5QjtvQkFFRCxPQUFPLElBQUkscUJBQVMsQ0FDbEIsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFDMUIsVUFBVSxFQUNWLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFDdEIsT0FBTyxDQUFDLG9CQUFvQixFQUFFLENBQy9CLENBQUE7aUJBQ0Y7Z0JBQUMsT0FBTyxHQUFHLEVBQUU7b0JBQ1osSUFBSSxHQUFHLFlBQVkscUNBQWdCLEVBQUU7d0JBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUEsZUFBUSxFQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUU7NEJBQ2hDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFOzRCQUNqQixJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsK0NBQStDO3lCQUM1RCxDQUFDLENBQUE7d0JBQ0YsaUNBQWlDO3dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUE7d0JBQ3BELE9BQU8sSUFBSSxxQkFBUyxDQUNsQixNQUFNLEVBQ04sVUFBVSxFQUNWLEVBQUUsRUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUN0QixTQUFTLEVBQ1QsU0FBUyxFQUNULElBQUEsZ0JBQVMsRUFBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQ3ZCLENBQUE7cUJBQ0Y7b0JBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsOERBQThELEVBQUUsR0FBRyxDQUFDLENBQUE7b0JBQ3RGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdFQUFnRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUE7b0JBQzlHLE9BQU8sSUFBSSxxQkFBUyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFBO2lCQUN0RjtZQUNILENBQUMsQ0FBQTtTQUNGO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUMzRCxNQUFNLEdBQUcsQ0FBQTtTQUNWO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNqQixPQUFlLEVBQ2YsYUFBNEIsRUFDNUIsWUFBMEIsRUFDMUIsRUFBVSxFQUNWLGdCQUE2QixFQUM3QixJQUFhLEVBQ2IsTUFBZTtRQUVmLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO1lBQ3RELE1BQU0sR0FBRyxJQUFBLDRCQUFtQixFQUFDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1lBQ3ZELE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtZQUNqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtZQUM5QyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsU0FBUyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7U0FDakQ7UUFFRCxPQUFPLElBQUksa0JBQWtCLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFBO0lBQ2pGLENBQUM7Q0FDRjtBQXhKRCxnREF3SkM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxDQUFPO0lBQzVCLE9BQU87UUFDTCxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVO1FBQy9CLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSTtRQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPO1FBQ3pCLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWE7UUFDakMsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUztRQUM3QixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPO1FBQ3pCLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVM7S0FDOUIsQ0FBQTtBQUNILENBQUMifQ==
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLWJvb3RzdHJhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbmdpbmUtYm9vdHN0cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBcUQ7QUFDckQsK0NBQXlDO0FBQ3pDLDJDQUFpRDtBQUNqRCx1Q0FBd0I7QUFDeEIsbUNBQWlFO0FBQ2pFLCtCQUF1RjtBQUN2RiwyQ0FBNEI7QUFFNUIsaURBQWtDO0FBQ2xDLDJDQUE0QjtBQUM1QiwyQ0FBNEI7QUFFNUIsMkNBQXVDO0FBQ3ZDLCtEQUF5RDtBQUN6RCxxQ0FBZ0Q7QUFFaEQseUVBQWtFO0FBRWxFLDZDQUF3QztBQWV4QyxNQUFhLGtCQUFrQjtJQUs3QixZQUNFLE9BQWUsRUFDTixFQUFVLEVBQ1YsTUFBYyxFQUNkLGFBQTRCLEVBQzVCLFlBQTBCO1FBSDFCLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFUcEIsbUJBQWMsR0FBRyxJQUFJLHFCQUFjLEVBQXFCLENBQUE7UUFXdkUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLHFCQUFRLEVBQUMsT0FBTyxDQUFDLENBQUE7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGdEQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ3RELENBQUM7SUFFTyxLQUFLLENBQUMsVUFBVSxDQUN0QixRQUFzQixFQUN0QixVQUE4QixFQUM5QixpQkFBZ0Q7UUFFaEQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQTtRQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFBO1FBQzlDLElB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
@@ -1,13 +1,15 @@
1
- import { Step } from 'build-raptor-api';
1
+ import { Step, StepByStepProcessor } from 'build-raptor-api';
2
2
  import { Logger } from 'logger';
3
3
  export declare class StepByStepTransmitter {
4
- private readonly stepByStepFile;
5
- private readonly stepByStepProcessor;
6
4
  private readonly logger;
7
5
  private readonly steps;
8
6
  private readonly promises;
9
- private constructor();
7
+ private readonly stepByStepProcessors;
8
+ private stepByStepFile;
9
+ constructor(logger: Logger);
10
+ setOutputFile(f: string): void;
11
+ addProcessor(p: StepByStepProcessor): void;
10
12
  transmit(step: Step): void;
11
13
  close(): Promise<void>;
12
- static create(stepByStepFile: string, stepByStepProcessorModuleName: string | undefined, logger: Logger, lookFor?: string): Promise<StepByStepTransmitter>;
14
+ dynamicallyLoadProcessor(stepByStepProcessorModuleName: string, lookFor?: string): Promise<void>;
13
15
  }
@@ -25,42 +25,48 @@ const build_raptor_dynamic_loader_1 = require("build-raptor-dynamic-loader");
25
25
  const fs = __importStar(require("fs"));
26
26
  const util = __importStar(require("util"));
27
27
  class StepByStepTransmitter {
28
- constructor(stepByStepFile, stepByStepProcessor, logger) {
29
- this.stepByStepFile = stepByStepFile;
30
- this.stepByStepProcessor = stepByStepProcessor;
28
+ constructor(logger) {
31
29
  this.logger = logger;
32
30
  this.steps = [];
33
31
  this.promises = [];
32
+ this.stepByStepProcessors = [];
33
+ this.stepByStepFile = undefined;
34
+ }
35
+ setOutputFile(f) {
36
+ this.stepByStepFile = f;
37
+ }
38
+ addProcessor(p) {
39
+ this.stepByStepProcessors.push(p);
34
40
  }
35
41
  transmit(step) {
36
42
  const parsed = build_raptor_api_1.Step.parse(step);
37
43
  this.steps.push(parsed);
38
- if (this.stepByStepProcessor) {
39
- this.promises.push(Promise.resolve(this.stepByStepProcessor(parsed)));
44
+ for (const p of this.stepByStepProcessors) {
45
+ this.promises.push(Promise.resolve(p(parsed)));
40
46
  }
41
47
  }
42
48
  async close() {
43
49
  await Promise.all(this.promises);
50
+ if (!this.stepByStepFile) {
51
+ return;
52
+ }
44
53
  const parsed = build_raptor_api_1.StepByStep.parse(this.steps);
45
54
  fs.writeFileSync(this.stepByStepFile, JSON.stringify(parsed));
46
55
  this.logger.info(`step by step written to ${this.stepByStepFile}`);
47
56
  }
48
- static async create(stepByStepFile, stepByStepProcessorModuleName, logger, lookFor = 'processor') {
49
- let processor;
50
- if (stepByStepProcessorModuleName) {
51
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
52
- const imported = (0, build_raptor_dynamic_loader_1.loadDynamically)(stepByStepProcessorModuleName);
53
- const temp = Object.entries(imported)
54
- .flatMap(([k, v]) => (k === lookFor ? [v] : []))
55
- .find(Boolean);
56
- if (!temp) {
57
- throw new Error(`could not find ${lookFor} in module ${stepByStepProcessorModuleName} which exports ${util.inspect(imported)}`);
58
- }
59
- processor = temp; // eslint-disable-line @typescript-eslint/consistent-type-assertions
57
+ async dynamicallyLoadProcessor(stepByStepProcessorModuleName, lookFor = 'processor') {
58
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
59
+ const imported = (0, build_raptor_dynamic_loader_1.loadDynamically)(stepByStepProcessorModuleName);
60
+ const temp = Object.entries(imported)
61
+ .flatMap(([k, v]) => (k === lookFor ? [v] : []))
62
+ .find(Boolean);
63
+ if (!temp) {
64
+ throw new Error(`could not find ${lookFor} in module ${stepByStepProcessorModuleName} which exports ${util.inspect(imported)}`);
60
65
  }
61
- logger.info(`processor=${util.inspect(processor)}`);
62
- return new StepByStepTransmitter(stepByStepFile, processor, logger);
66
+ const processor = temp; // eslint-disable-line @typescript-eslint/consistent-type-assertions
67
+ this.logger.info(`processor=${util.inspect(processor)}`);
68
+ this.addProcessor(processor);
63
69
  }
64
70
  }
65
71
  exports.StepByStepTransmitter = StepByStepTransmitter;
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1ieS1zdGVwLXRyYW5zbWl0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0ZXAtYnktc3RlcC10cmFuc21pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXdFO0FBQ3hFLDZFQUE2RDtBQUM3RCx1Q0FBd0I7QUFFeEIsMkNBQTRCO0FBRTVCLE1BQWEscUJBQXFCO0lBSWhDLFlBQ21CLGNBQXNCLEVBQ3RCLG1CQUFvRCxFQUNwRCxNQUFjO1FBRmQsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFDdEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFpQztRQUNwRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTmhCLFVBQUssR0FBVyxFQUFFLENBQUE7UUFDbEIsYUFBUSxHQUFvQixFQUFFLENBQUE7SUFNNUMsQ0FBQztJQUVKLFFBQVEsQ0FBQyxJQUFVO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLHVCQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBRXZCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUN0RTtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEMsTUFBTSxNQUFNLEdBQUcsNkJBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzNDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFBO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDakIsY0FBc0IsRUFDdEIsNkJBQWlELEVBQ2pELE1BQWMsRUFDZCxPQUFPLEdBQUcsV0FBVztRQUVyQixJQUFJLFNBQVMsQ0FBQTtRQUNiLElBQUksNkJBQTZCLEVBQUU7WUFDakMseUVBQXlFO1lBQ3pFLE1BQU0sUUFBUSxHQUFHLElBQUEsNkNBQWUsRUFBQyw2QkFBNkIsQ0FBVyxDQUFBO1lBQ3pFLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO2lCQUNsQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQ2hCLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsTUFBTSxJQUFJLEtBQUssQ0FDYixrQkFBa0IsT0FBTyxjQUFjLDZCQUE2QixrQkFBa0IsSUFBSSxDQUFDLE9BQU8sQ0FDaEcsUUFBUSxDQUNULEVBQUUsQ0FDSixDQUFBO2FBQ0Y7WUFDRCxTQUFTLEdBQUcsSUFBMkIsQ0FBQSxDQUFDLG9FQUFvRTtTQUM3RztRQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNuRCxPQUFPLElBQUkscUJBQXFCLENBQUMsY0FBYyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUNyRSxDQUFDO0NBQ0Y7QUFwREQsc0RBb0RDIn0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1ieS1zdGVwLXRyYW5zbWl0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0ZXAtYnktc3RlcC10cmFuc21pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXdFO0FBQ3hFLDZFQUE2RDtBQUM3RCx1Q0FBd0I7QUFFeEIsMkNBQTRCO0FBRTVCLE1BQWEscUJBQXFCO0lBTWhDLFlBQTZCLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTDFCLFVBQUssR0FBVyxFQUFFLENBQUE7UUFDbEIsYUFBUSxHQUFvQixFQUFFLENBQUE7UUFDOUIseUJBQW9CLEdBQTBCLEVBQUUsQ0FBQTtRQUN6RCxtQkFBYyxHQUF1QixTQUFTLENBQUE7SUFFUixDQUFDO0lBRS9DLGFBQWEsQ0FBQyxDQUFTO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsQ0FBc0I7UUFDakMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVU7UUFDakIsTUFBTSxNQUFNLEdBQUcsdUJBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFdkIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQy9DO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixPQUFNO1NBQ1A7UUFDRCxNQUFNLE1BQU0sR0FBRyw2QkFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDM0MsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywyQkFBMkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7SUFDcEUsQ0FBQztJQUVELEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyw2QkFBcUMsRUFBRSxPQUFPLEdBQUcsV0FBVztRQUN6Rix5RUFBeUU7UUFDekUsTUFBTSxRQUFRLEdBQUcsSUFBQSw2Q0FBZSxFQUFDLDZCQUE2QixDQUFXLENBQUE7UUFDekUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7YUFDbEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxNQUFNLElBQUksS0FBSyxDQUNiLGtCQUFrQixPQUFPLGNBQWMsNkJBQTZCLGtCQUFrQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQy9HLENBQUE7U0FDRjtRQUNELE1BQU0sU0FBUyxHQUFHLElBQTJCLENBQUEsQ0FBQyxvRUFBb0U7UUFFbEgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUN4RCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQzlCLENBQUM7Q0FDRjtBQW5ERCxzREFtREMifQ==
@@ -223,7 +223,8 @@ class SingleTaskExecutor {
223
223
  if (phase === 'POSSIBLY_RESTORE_OUTPUTS') {
224
224
  const earlierVerdict = await this.getVerdict();
225
225
  this.diagnose(`earlierVerdict is ${earlierVerdict}`);
226
- if (earlierVerdict === 'UNKNOWN' || (this.isTest && !this.testCaching)) {
226
+ const useCaching = this.task.taskInfo.useCaching ?? true;
227
+ if (earlierVerdict === 'UNKNOWN' || (this.isTest && !this.testCaching) || !useCaching) {
227
228
  await this.purgeOutputs(false);
228
229
  return 'RUN_IT';
229
230
  }
@@ -303,4 +304,4 @@ class SingleTaskExecutor {
303
304
  });
304
305
  }
305
306
  }
306
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXNrLWV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBcUQ7QUFDckQsOENBQStCO0FBRS9CLCtCQUEwRTtBQUMxRSwyQ0FBNEI7QUFFNUIseUNBQW9DO0FBV3BDOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBQ3ZCLFlBQ21CLEtBQVksRUFDWixPQUFvQixFQUNwQixNQUFjLEVBQ2QsWUFBMEIsRUFDMUIsU0FBb0IsRUFDcEIsYUFBcUIsRUFDckIsY0FBaUQsRUFDakQsaUJBQW9DLEVBQ3BDLE1BQWMsRUFDZCxXQUFvQixFQUNwQixlQUF5QjtRQVZ6QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUM7UUFDakQsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZ0JBQVcsR0FBWCxXQUFXLENBQVM7UUFDcEIsb0JBQWUsR0FBZixlQUFlLENBQVU7SUFDekMsQ0FBQztJQUVKOzs7T0FHRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBa0IsRUFBRSxlQUEyQjtRQUMvRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGtCQUFrQixDQUNoQyxRQUFRLEVBQ1IsZUFBZSxFQUNmLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLGFBQWEs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
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXNrLWV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBcUQ7QUFDckQsOENBQStCO0FBRS9CLCtCQUEwRTtBQUMxRSwyQ0FBNEI7QUFFNUIseUNBQW9DO0FBV3BDOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBQ3ZCLFlBQ21CLEtBQVksRUFDWixPQUFvQixFQUNwQixNQUFjLEVBQ2QsWUFBMEIsRUFDMUIsU0FBb0IsRUFDcEIsYUFBcUIsRUFDckIsY0FBaUQsRUFDakQsaUJBQW9DLEVBQ3BDLE1BQWMsRUFDZCxXQUFvQixFQUNwQixlQUF5QjtRQVZ6QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUM7UUFDakQsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZ0JBQVcsR0FBWCxXQUFXLENBQVM7UUFDcEIsb0JBQWUsR0FBZixlQUFlLENBQVU7SUFDekMsQ0FBQztJQUVKOzs7T0FHRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBa0IsRUFBRSxlQUEyQjtRQUMvRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGtCQUFrQixDQUNoQyxRQUFRLEVBQ1IsZUFBZSxFQUNmLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLGFBQWEsRUFDbEIsSUFBSSxDQUFDLGNBQWMsRUFDbkIsSUFBSSxDQUFDLGlCQUFpQixFQUN0QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxXQUFXLEVBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUN4QyxDQUFBO1FBQ0QsTUFBTSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDekIsQ0FBQztDQUNGO0FBckNELG9DQXFDQztBQUVELE1BQU0sa0JBQWtCO0lBSXRCOzs7Ozs7Ozs7Ozs7OztPQWNHO0lBQ0gsWUFDbUIsUUFBa0IsRUFDbEIsZUFBMkIsRUFDM0IsS0FBWSxFQUNaLE9BQW9CLEVBQ3BCLE1BQWMsRUFDZCxZQUEwQixFQUMxQixTQUFvQixFQUNwQixhQUFxQixFQUNyQixjQUFpRCxFQUNqRCxpQkFBb0MsRUFDcEMsTUFBYyxFQUNkLFdBQW9CLEVBQ3BCLGNBQXdCO1FBWnhCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsb0JBQWUsR0FBZixlQUFlLENBQVk7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFDcEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQW1DO1FBQ2pELHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFTO1FBQ3BCLG1CQUFjLEdBQWQsY0FBYyxDQUFVO1FBL0IxQixtQkFBYyxHQUFHLElBQUkscUJBQWMsRUFBb0IsQ0FBQTtRQWlDdEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFBLG9CQUFRLEdBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUE7SUFDbEUsQ0FBQztJQUVPLFFBQVEsQ0FBQyxPQUFlO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3hCLE9BQU07U0FDUDtRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRCxJQUFZLElBQUk7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBRUQsSUFBWSxJQUFJO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdDLENBQUM7SUFFTyxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQWtCLEVBQUUsVUFBa0IsRUFBRSxJQUFZO1FBQzVFLG1GQUFtRjtRQUNuRixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLFVBQVUsT0FBTyxPQUFPLEVBQUUsQ0FBQyxDQUFBO1NBQ3hEO1FBQ0QseUNBQXlDO1FBQ3pDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7WUFDbEQsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLE1BQU07WUFDTixVQUFVO1lBQ1YsSUFBSTtZQUNKLFVBQVUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHO1NBQ3JDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsa0JBQWtCO1FBQzlCLE1BQU0sR0FBRyxHQUFrQixFQUFFLENBQUE7UUFFN0IsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUVuQiw4Q0FBOEM7UUFDOUMsZ0NBQWdDO1FBRWhDLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQy9HLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUNwQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNuQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFBO1NBQy9CO1FBQ0QsTUFBTSxLQUFLLEdBQWdDLEVBQUUsQ0FBQTtRQUU3QyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFDeEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQzFCLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUMxRCxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ3JCLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFBO1NBQzdCO1FBRUQsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtRQUU5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3JELE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztJQUVPLEtBQUssQ0FBQyxlQUFlO1FBQzNCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDbkIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLGVBQVEsRUFBQyxDQUFDLENBQUMsZUFBZSxDQUFDO2FBQzlDLE1BQU0sQ0FBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLEVBQUU7WUFDbEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUMzRCxNQUFNLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDN0MsT0FBTyxDQUFDLE1BQU0sQ0FBQTtRQUNoQixDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFYixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNuQixPQUFNO1NBQ1A7UUFFRCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDbEYsTUFBTSxJQUFJLHFDQUFnQixDQUFDLFFBQVEsSUFBSSxDQUFDLFFBQVEsOENBQThDLFNBQVMsRUFBRSxDQUFDLENBQUE7SUFDNUcsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDZixJQUFJO1lBQ0YsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtZQUNuQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDbkMsT0FBTTthQUNQO1lBRUQsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7U0FDdkI7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLFFBQVEsMkJBQTJCLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFDdEUsTUFBTSxDQUFDLENBQUE7U0FDUjtJQUNILENBQUM7SUFFRCxJQUFZLEdBQUc7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3pELENBQUM7SUFJRCxJQUFZLEVBQUU7UUFDWixPQUFPLElBQUksQ0FBQyxHQUFHLElBQUksSUFBQSxhQUFNLEVBQUMsbUNBQW1DLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQy9FLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssbUJBQW1CO1FBQ3pCLCtHQUErRztRQUMvRyxpRUFBaUU7UUFDakUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3hCLE9BQU8sS0FBSyxDQUFBO1NBQ2I7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUMvQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFTyxLQUFLLENBQUMsU0FBUztRQUNyQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtRQUNoRCxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2xCLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxVQUFVLENBQUMsQ0FBQTtZQUNqSCxPQUFNO1NBQ1A7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBRW5ELElBQUksS0FBSyxHQUFVLFNBQVMsQ0FBQTtRQUM1QixPQUFPLElBQUksRUFBRTtZQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3pCLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO1lBQ3ZGLElBQUksS0FBSyxLQUFLLFVBQVUsRUFBRTtnQkFDeEIsTUFBSzthQUNOO1lBQ0QsS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUN0QyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQTtTQUNsRDtJQUNILENBQUM7SUFFTyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQVk7UUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxLQUFLLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQTtRQUN2QyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFBO1FBRW5CLGtGQUFrRjtRQUNsRixJQUFJLEtBQUssS0FBSyxXQUFXLEVBQUU7WUFDekIsT0FBTyxTQUFTLENBQUE7U0FDakI7UUFFRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDdkIsT0FBTyxxQkFBcUIsQ0FBQTtTQUM3QjtRQUVELElBQUksS0FBSyxLQUFLLHFCQUFxQixFQUFFO1lBQ25DLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtZQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQTtZQUMzQyxPQUFPLDBCQUEwQixDQUFBO1NBQ2xDO1FBRUQsSUFBSSxLQUFLLEtBQUssMEJBQTBCLEVBQUU7WUFDeEMsTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7WUFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsY0FBYyxFQUFFLENBQUMsQ0FBQTtZQUNwRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFBO1lBQ3hELElBQUksY0FBYyxLQUFLLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JGLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQTtnQkFDOUIsT0FBTyxRQUFRLENBQUE7YUFDaEI7WUFDRCxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDN0IsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7WUFFM0IsSUFBSSxjQUFjLEtBQUssTUFBTSxFQUFFO2dCQUM3QixPQUFPLFFBQVEsQ0FBQTthQUNoQjtZQUVELElBQUksY0FBYyxLQUFLLElBQUksSUFBSSxjQUFjLEtBQUssT0FBTyxFQUFFO2dCQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUE7Z0JBQzFELE9BQU8sTUFBTSxDQUFBO2FBQ2Q7WUFFRCxJQUFBLHdCQUFpQixFQUFDLGNBQWMsQ0FBQyxDQUFBO1NBQ2xDO1FBRUQsSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzdELE9BQU8sVUFBVSxDQUFBO1NBQ2xCO1FBRUQsSUFBSSxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUE7WUFDM0IsTUFBTSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDbEIsT0FBTyxVQUFVLENBQUE7U0FDbEI7UUFFRCxJQUFJLEtBQUssS0FBSyxVQUFVLEVBQUU7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLHdCQUF3QixLQUFLLEVBQUUsQ0FBQyxDQUFBO1NBQy9EO1FBRUQsSUFBQSx3QkFBaUIsRUFBQyxLQUFLLENBQUMsQ0FBQTtJQUMxQixDQUFDO0lBRU8sS0FBSyxDQUFDLGNBQWM7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBQ2xDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDbkIsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNqRCxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQ2hDLENBQUM7SUFFTyxLQUFLLENBQUMsVUFBVTtRQUN0QixNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNqRixPQUFPLGNBQWMsQ0FBQTtJQUN2QixDQUFDO0lBRU8sS0FBSyxDQUFDLEtBQUs7UUFDakIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUVuQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDckIsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDN0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDbEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3pGLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQTtRQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQTtRQUNqQyxJQUFJLE1BQU0sS0FBSyxPQUFPLEVBQUU7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtTQUMxRDtRQUVELE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDekUsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFO1lBQ25CLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO1lBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsQ0FBQTtZQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQTtZQUN4RCxJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQTtZQUM5RCxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFDL0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1lBQ3BDLE9BQU07U0FDUDtRQUVELElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRTtZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQTtZQUN4RCw4REFBOEQ7WUFDOUQsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFBO1lBQ2pFLE9BQU07U0FDUDtRQUVELElBQUEsd0JBQWlCLEVBQUMsTUFBTSxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUVPLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBa0I7UUFDM0MsSUFBSSxTQUFTLEVBQUU7WUFDYixPQUFNO1NBQ1A7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDaEMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDakMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFM0QsTUFBTSxJQUFBLGVBQVEsRUFBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBQyxJQUFJLEVBQUMsRUFBRTtZQUM3QyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDNUMsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0YifQ==
@@ -11,4 +11,8 @@ export declare type TaskInfo = {
11
11
  readonly outputLocations?: OutputLocation[];
12
12
  readonly deps?: TaskName[];
13
13
  readonly labels?: string[];
14
+ /**
15
+ * Whether to use previously stored outputs for this task. Defaults to true.
16
+ */
17
+ useCaching?: boolean;
14
18
  };
@@ -1,12 +1,22 @@
1
1
  import { z } from 'zod';
2
2
  export declare const YarnRepoProtocolConfig: z.ZodObject<{
3
+ /**
4
+ * Whether to let tsc to build multiple units of the monorepo. When set to false, build-raptor will build each
5
+ * unit separately.
6
+ */
3
7
  uberBuild: z.ZodOptional<z.ZodBoolean>;
8
+ /**
9
+ * Whether to cache the outputs of tsc (the "dist" directory). Default to true.
10
+ */
11
+ cacheCompilationOutputs: z.ZodOptional<z.ZodBoolean>;
4
12
  install: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"dormant">, z.ZodLiteral<"on">]>]>;
5
13
  }, "strict", z.ZodTypeAny, {
6
14
  uberBuild?: boolean | undefined;
15
+ cacheCompilationOutputs?: boolean | undefined;
7
16
  install?: boolean | "off" | "dormant" | "on" | undefined;
8
17
  }, {
9
18
  uberBuild?: boolean | undefined;
19
+ cacheCompilationOutputs?: boolean | undefined;
10
20
  install?: boolean | "off" | "dormant" | "on" | undefined;
11
21
  }>;
12
22
  export declare type YarnRepoProtocolConfig = z.infer<typeof YarnRepoProtocolConfig>;
@@ -4,11 +4,19 @@ exports.YarnRepoProtocolConfig = void 0;
4
4
  const zod_1 = require("zod");
5
5
  exports.YarnRepoProtocolConfig = zod_1.z
6
6
  .object({
7
+ /**
8
+ * Whether to let tsc to build multiple units of the monorepo. When set to false, build-raptor will build each
9
+ * unit separately.
10
+ */
7
11
  uberBuild: zod_1.z.boolean().optional(),
12
+ /**
13
+ * Whether to cache the outputs of tsc (the "dist" directory). Default to true.
14
+ */
15
+ cacheCompilationOutputs: zod_1.z.boolean().optional(),
8
16
  install: zod_1.z
9
17
  .boolean()
10
18
  .optional()
11
19
  .or(zod_1.z.union([zod_1.z.literal('off'), zod_1.z.literal('dormant'), zod_1.z.literal('on')])),
12
20
  })
13
21
  .strict();
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybi1yZXBvLXByb3RvY29sLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy95YXJuLXJlcG8tcHJvdG9jb2wtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUF1QjtBQUVWLFFBQUEsc0JBQXNCLEdBQUcsT0FBQztLQUNwQyxNQUFNLENBQUM7SUFDTixTQUFTLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNqQyxPQUFPLEVBQUUsT0FBQztTQUNQLE9BQU8sRUFBRTtTQUNULFFBQVEsRUFBRTtTQUNWLEVBQUUsQ0FBQyxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQzFFLENBQUM7S0FDRCxNQUFNLEVBQUUsQ0FBQSJ9
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybi1yZXBvLXByb3RvY29sLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy95YXJuLXJlcG8tcHJvdG9jb2wtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUF1QjtBQUVWLFFBQUEsc0JBQXNCLEdBQUcsT0FBQztLQUNwQyxNQUFNLENBQUM7SUFDTjs7O09BR0c7SUFDSCxTQUFTLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNqQzs7T0FFRztJQUNILHVCQUF1QixFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0MsT0FBTyxFQUFFLE9BQUM7U0FDUCxPQUFPLEVBQUU7U0FDVCxRQUFRLEVBQUU7U0FDVixFQUFFLENBQUMsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUMxRSxDQUFDO0tBQ0QsTUFBTSxFQUFFLENBQUEifQ==
@@ -694,6 +694,7 @@ class YarnRepoProtocol {
694
694
  .map(at => this.unitOf(at).pathInRepo);
695
695
  const ret = {
696
696
  labels: ['build'],
697
+ useCaching: this.state.config.cacheCompilationOutputs ?? true,
697
698
  taskName: (0, task_name_1.TaskName)(u.id, (0, task_name_1.TaskKind)('build')),
698
699
  outputLocations: [{ pathInRepo: dir.expand(this.dist()), purge: 'NEVER' }],
699
700
  inputs: [
@@ -938,4 +939,4 @@ const emptyRerunList = rerun_list_1.RerunList.parse([]);
938
939
  function toArray(input) {
939
940
  return Array.isArray(input) ? input : [input];
940
941
  }
941
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybi1yZXBvLXByb3RvY29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3lhcm4tcmVwby1wcm90b2NvbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkRBQXFEO0FBQ3JELDJDQUFpRDtBQUNqRCxnRkFBcUQ7QUFDckQsa0RBQXlCO0FBQ3pCLHVDQUF3QjtBQUN4Qiw4Q0FBK0I7QUFFL0IsK0JBWWE7QUFDYiwyQ0FBNEI7QUFTNUIscURBQWdEO0FBQ2hELHlDQUE4QztBQUM5QyxpREFBa0M7QUFFbEMsaURBQW9EO0FBQ3BELDZCQUF1QjtBQUV2QiwyREFBa0Y7QUFDbEYsMkVBQW9FO0FBQ3BFLDZDQUF3QztBQUN4QywyRUFBb0U7QUFFcEUsTUFBTSx3QkFBd0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUN2QyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ1AsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUU7SUFDcEIscUJBQXFCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRTtJQUN6QywrQkFBK0IsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFO0NBQ3BELENBQUMsQ0FDSCxDQUFBO0FBaUJELEtBQUssVUFBVSxXQUFXO0lBQ3hCLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDbkMsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsUUFBZ0I7SUFDcEMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFFBQVEsQ0FBQTtBQUM3QyxDQUFDO0FBRUQsTUFBYSxnQkFBZ0I7SUFXM0IsWUFDbUIsTUFBYztJQUMvQiw4QkFBOEI7SUFDYixjQUF5QjtRQUZ6QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FB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
942
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybi1yZXBvLXByb3RvY29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3lhcm4tcmVwby1wcm90b2NvbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkRBQXFEO0FBQ3JELDJDQUFpRDtBQUNqRCxnRkFBcUQ7QUFDckQsa0RBQXlCO0FBQ3pCLHVDQUF3QjtBQUN4Qiw4Q0FBK0I7QUFFL0IsK0JBWWE7QUFDYiwyQ0FBNEI7QUFTNUIscURBQWdEO0FBQ2hELHlDQUE4QztBQUM5QyxpREFBa0M7QUFFbEMsaURBQW9EO0FBQ3BELDZCQUF1QjtBQUV2QiwyREFBa0Y7QUFDbEYsMkVBQW9FO0FBQ3BFLDZDQUF3QztBQUN4QywyRUFBb0U7QUFFcEUsTUFBTSx3QkFBd0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUN2QyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ1AsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUU7SUFDcEIscUJBQXFCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRTtJQUN6QywrQkFBK0IsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFO0NBQ3BELENBQUMsQ0FDSCxDQUFBO0FBaUJELEtBQUssVUFBVSxXQUFXO0lBQ3hCLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDbkMsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsUUFBZ0I7SUFDcEMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFFBQVEsQ0FBQTtBQUM3QyxDQUFDO0FBRUQsTUFBYSxnQkFBZ0I7SUFXM0IsWUFDbUIsTUFBYztJQUMvQiw4QkFBOEI7SUFDYixjQUF5QjtRQUZ6QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FB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
@@ -1,5 +1,5 @@
1
1
  import { Criticality } from 'logger';
2
- declare type TestReporting = 'just-failing' | 'tree' | 'tree-just-failing';
2
+ declare type TestReporting = 'tree-all' | 'tree-just-failing';
3
3
  interface Options {
4
4
  units: string[];
5
5
  goals: string[];
@@ -24,6 +24,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
25
  exports.main = exports.run = exports.getEnv = void 0;
26
26
  const build_raptor_core_1 = require("build-raptor-core");
27
+ const fs_1 = __importDefault(require("fs"));
27
28
  const fse = __importStar(require("fs-extra"));
28
29
  const logger_1 = require("logger");
29
30
  const misc_1 = require("misc");
@@ -82,26 +83,63 @@ async function run(options) {
82
83
  const repoProtocol = new yarn_repo_protocol_1.YarnRepoProtocol(logger, assetPublisher);
83
84
  const bootstrapper = await build_raptor_core_1.EngineBootstrapper.create(rootDir, storageClient, repoProtocol, t0, options.criticality, '', logger);
84
85
  const testOutput = new Map();
85
- const visualizer = new task_execution_visualizer_1.TaskExecutionVisualizer();
86
+ const visualizer = options.taskProgressOutput ? new task_execution_visualizer_1.TaskExecutionVisualizer() : undefined;
87
+ // TODO(imaman): use a writable stream?
88
+ const allTestsFile = path.join(buildRaptorDir, 'all-tests');
89
+ // Wipe out the file
90
+ fs_1.default.writeFileSync(allTestsFile, '');
91
+ let atLeastOneTest = false;
92
+ bootstrapper.transmitter.addProcessor(s => {
93
+ if (s.step === 'ASSET_PUBLISHED' ||
94
+ s.step === 'BUILD_RUN_STARTED' ||
95
+ s.step === 'PUBLIC_FILES' ||
96
+ s.step === 'TASK_STORE_GET' ||
97
+ s.step === 'TASK_STORE_PUT') {
98
+ return;
99
+ }
100
+ if (s.step === 'TEST_ENDED') {
101
+ atLeastOneTest = true;
102
+ return;
103
+ }
104
+ if (s.step === 'PLAN_PREPARED') {
105
+ visualizer?.addTasks(s.taskNames);
106
+ return;
107
+ }
108
+ if (s.step === 'TASK_ENDED') {
109
+ if (visualizer) {
110
+ const line = visualizer.ended(s.taskName, s.verdict, s.executionType);
111
+ if (line) {
112
+ logger.print(line);
113
+ }
114
+ }
115
+ return;
116
+ }
117
+ if (s.step === 'BUILD_RUN_ENDED') {
118
+ // If there are no tests, don't print the message asbout the location of the all-test-logs file.
119
+ // If there is no summary message, do not print it.
120
+ // If one of them is printed, add a prefix of three blank lines
121
+ const line = visualizer?.summary(Date.now() - t0) ?? '';
122
+ const whereIsTheLogMessage = atLeastOneTest ? `All test logs were written to ${allTestsFile}\n\n` : ``;
123
+ if (whereIsTheLogMessage || line) {
124
+ // The logger does .trim() on the message so we use "." instead of a "pure" blank line
125
+ logger.print(`.\n.\n.\n${whereIsTheLogMessage}${line}`);
126
+ }
127
+ return;
128
+ }
129
+ (0, misc_1.shouldNeverHappen)(s);
130
+ });
86
131
  bootstrapper.subscribable.on('testEnded', arg => {
87
132
  (0, misc_1.assigningGet)(testOutput, arg.taskName, () => []).push(arg);
88
133
  });
89
134
  bootstrapper.subscribable.on('executionStarted', arg => {
90
- if (options.taskProgressOutput) {
91
- logger.print(visualizer.begin(arg));
135
+ if (visualizer) {
136
+ visualizer.begin(arg);
92
137
  }
93
138
  else {
94
139
  logger.print(`=============================== ${arg} =================================`);
95
140
  }
96
141
  });
97
142
  bootstrapper.subscribable.on('executionEnded', async (arg) => {
98
- if (options.taskProgressOutput) {
99
- logger.print(visualizer.ended(arg.taskName, (0, misc_1.switchOn)(arg.status, {
100
- OK: () => '🏁',
101
- FAIL: () => '🏁',
102
- CRASH: () => '🏁',
103
- })));
104
- }
105
143
  // TODO(imaman): cover (output is indeed written in file structure)
106
144
  await fse.ensureDir(buildRaptorDirTasks);
107
145
  const fileName = path.join(buildRaptorDirTasks, (0, misc_1.toReasonableFileName)(arg.taskName));
@@ -116,19 +154,19 @@ async function run(options) {
116
154
  finally {
117
155
  stream.end();
118
156
  }
119
- reportTests(logger, testOutput.get(arg.taskName) ?? [], options.testReporting ?? 'tree');
120
- const doPrint = options.printPassing ||
157
+ reportTests(logger, testOutput.get(arg.taskName) ?? [], options.testReporting ?? 'tree-all', allTestsFile);
158
+ const dumpTaskOutputToTerminal = options.printPassing ||
121
159
  (0, misc_1.switchOn)(arg.status, {
122
160
  CRASH: () => false,
123
161
  OK: () => false,
124
162
  FAIL: () => true,
125
163
  });
126
- if (!doPrint) {
127
- return;
164
+ if (dumpTaskOutputToTerminal) {
165
+ await (0, misc_1.dumpFile)(arg.outputFile, process.stdout);
166
+ logger.print(`\n\n`);
128
167
  }
129
- await (0, misc_1.dumpFile)(arg.outputFile, process.stdout);
168
+ fs_1.default.appendFileSync(allTestsFile, fs_1.default.readFileSync(arg.outputFile) + '\n');
130
169
  logger.info(`output of ${arg.taskName} dumped`);
131
- logger.print(`\n\n`);
132
170
  });
133
171
  bootstrapper.subscribable.on('executionSkipped', tn => {
134
172
  logger.print(`Task ${tn} succeeded earlier. Skipping.\n`, 'low');
@@ -159,16 +197,13 @@ async function run(options) {
159
197
  process.exitCode = exitCode;
160
198
  }
161
199
  exports.run = run;
162
- function reportTests(logger, arr, tr) {
163
- if (tr === 'just-failing') {
164
- return;
165
- }
166
- let printPassing;
167
- if (tr === 'tree') {
168
- printPassing = true;
200
+ function reportTests(logger, arr, tr, allTasksFile) {
201
+ let renderPassingTests;
202
+ if (tr === 'tree-all') {
203
+ renderPassingTests = true;
169
204
  }
170
205
  else if (tr === 'tree-just-failing') {
171
- printPassing = false;
206
+ renderPassingTests = false;
172
207
  }
173
208
  else {
174
209
  (0, misc_1.shouldNeverHappen)(tr);
@@ -209,19 +244,25 @@ function reportTests(logger, arr, tr) {
209
244
  TEST_TIMEDOUT: () => '⏲️ [timedout]',
210
245
  });
211
246
  const duration = at.durationMillis === undefined ? '' : ` (${at.durationMillis} ms)`;
212
- logger.print(`${spaces}${v} ${at.testPath.at(-1)}${duration}`, 'high');
247
+ const message = `${spaces}${v} ${at.testPath.at(-1)}${duration}`;
248
+ // TODO(imaman): create a dedicate logger that write to the allTasksFile
249
+ logger.print(message, 'high');
250
+ fs_1.default.appendFileSync(allTasksFile, message + '\n');
213
251
  prev = k;
214
252
  }
215
253
  }
216
254
  const list = Object.entries((0, misc_1.groupBy)(arr, at => at.fileName)).map(([fileName, tests]) => ({ fileName, tests }));
217
255
  const sorted = (0, misc_1.sortBy)(list, at => at.fileName);
218
256
  const passing = sorted.filter(at => isPassing(at.tests));
219
- if (printPassing) {
220
- for (const at of passing) {
221
- logger.print(`✅ PASSED ${at.fileName}`, 'high');
257
+ for (const at of passing) {
258
+ const message = `✅ PASSED ${at.fileName}`;
259
+ fs_1.default.appendFileSync(allTasksFile, message + '\n');
260
+ if (renderPassingTests) {
261
+ logger.print(message, 'high');
222
262
  }
223
263
  }
224
264
  for (const at of sorted.filter(at => !isPassing(at.tests))) {
265
+ fs_1.default.appendFileSync(allTasksFile, at.fileName + '\n');
225
266
  logger.print(at.fileName, 'high');
226
267
  printTests(at.tests);
227
268
  }
@@ -253,7 +294,7 @@ function main() {
253
294
  default: [],
254
295
  })
255
296
  .option('print-passing', {
256
- describe: 'whether to print the output of passing tasks to the terminal.',
297
+ describe: 'whether to dump the output of passing tasks to the terminal.',
257
298
  type: 'boolean',
258
299
  default: false,
259
300
  })
@@ -263,6 +304,7 @@ function main() {
263
304
  demandOption: false,
264
305
  default: 8,
265
306
  })
307
+ // TODO(imaman): seems like --compact, --loudness can be replaced by --task-progress-output
266
308
  .options('compact', {
267
309
  describe: 'whether to list only executing tasks (i.e., do not print skipped tasks)',
268
310
  type: 'boolean',
@@ -286,9 +328,9 @@ function main() {
286
328
  demandOption: false,
287
329
  })
288
330
  .option('test-reporting', {
289
- choices: ['just-failing', 'tree', 'tree-just-failing'],
331
+ choices: ['tree-all', 'tree-just-failing'],
290
332
  describe: 'test reporing policy',
291
- default: 'tree',
333
+ default: 'tree-just-failing',
292
334
  })
293
335
  .option('test-caching', {
294
336
  describe: 'whether to skip running tests that have already passed',
@@ -296,7 +338,7 @@ function main() {
296
338
  default: true,
297
339
  })
298
340
  .option('task-progress-output', {
299
- describe: 'whether to print number of tasks ended/started',
341
+ describe: 'whether to print a line indicating verdict/execution-type for each task',
300
342
  type: 'boolean',
301
343
  default: false,
302
344
  })
@@ -327,7 +369,7 @@ function main() {
327
369
  compact: argv.compact,
328
370
  criticality: stringToLoudness(argv.loudness),
329
371
  testCaching: argv.testCaching,
330
- testReporting: tr === 'just-failing' || tr === 'tree' || tr === 'tree-just-failing' || tr === undefined
372
+ testReporting: tr === 'tree-all' || tr === 'tree-just-failing' || tr === undefined
331
373
  ? tr
332
374
  : (0, misc_1.failMe)(`unsupported value: ${tr}`),
333
375
  stepByStepProcessor: argv.stepByStepProcessor,
@@ -363,7 +405,7 @@ function main() {
363
405
  compact: argv.compact,
364
406
  criticality: stringToLoudness(argv.loudness),
365
407
  testCaching: argv.testCaching,
366
- testReporting: tr === 'just-failing' || tr === 'tree' || tr === 'tree-just-failing' || tr === undefined
408
+ testReporting: tr === 'tree-all' || tr === 'tree-just-failing' || tr === undefined
367
409
  ? tr
368
410
  : (0, misc_1.failMe)(`unsupported value: ${tr}`),
369
411
  stepByStepProcessor: argv.stepByStepProcessor,
@@ -409,4 +451,4 @@ function stringToLoudness(s) {
409
451
  }
410
452
  throw new Error(`illegal loudness value: "${s}"`);
411
453
  }
412
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtcmFwdG9yLWNsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZC1yYXB0b3ItY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5REFBd0c7QUFDeEcsOENBQStCO0FBQy9CLG1DQUFpRTtBQUNqRSwrQkFZYTtBQUNiLHVDQUF3QjtBQUN4QiwyQ0FBNEI7QUFFNUIseURBQTZEO0FBRTdELGtEQUF5QjtBQUN6QiwyQ0FBdUM7QUFDdkMsMkRBQXFEO0FBRXJELDJFQUFxRTtBQXlCckUsU0FBZ0IsTUFBTSxDQUFDLFVBQXNCO0lBQzNDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQSxDQUFDLHFDQUFxQztBQUN0RSxDQUFDO0FBRkQsd0JBRUM7QUFFRCxNQUFNLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQTtBQUM3QixLQUFLLFVBQVUsbUJBQW1CO0lBQ2hDLE9BQU8sTUFBTSw4QkFBdUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsdUJBQXVCLENBQUMsRUFBRTtRQUM1RiwrQkFBK0IsRUFBRSxDQUFDLEdBQUcsRUFBRTtLQUN4QyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRU0sS0FBSyxVQUFVLEdBQUcsQ0FBQyxPQUFnQjtJQUN4QyxPQUFPLENBQUMsR0FBRyxDQUFDLDRDQUE0QyxHQUFHLEdBQUcsQ0FBQSxDQUFDLHFDQUFxQztJQUNwRyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO1FBQ2pDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7S0FDM0Q7SUFDRCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7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
454
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtcmFwdG9yLWNsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZC1yYXB0b3ItY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5REFBd0c7QUFDeEcsNENBQW1CO0FBQ25CLDhDQUErQjtBQUMvQixtQ0FBaUU7QUFDakUsK0JBWWE7QUFDYix1Q0FBd0I7QUFDeEIsMkNBQTRCO0FBRTVCLHlEQUE2RDtBQUU3RCxrREFBeUI7QUFDekIsMkNBQXVDO0FBQ3ZDLDJEQUFxRDtBQUVyRCwyRUFBcUU7QUF5QnJFLFNBQWdCLE1BQU0sQ0FBQyxVQUFzQjtJQUMzQyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUEsQ0FBQyxxQ0FBcUM7QUFDdEUsQ0FBQztBQUZELHdCQUVDO0FBRUQsTUFBTSxFQUFFLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUE7QUFDN0IsS0FBSyxVQUFVLG1CQUFtQjtJQUNoQyxPQUFPLE1BQU0sOEJBQXVCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLHVCQUF1QixDQUFDLEVBQUU7UUFDNUYsK0JBQStCLEVBQUUsQ0FBQyxHQUFHLEVBQUU7S0FDeEMsQ0FBQyxDQUFBO0FBQ0osQ0FBQztBQUVNLEtBQUssVUFBVSxHQUFHLENBQUMsT0FBZ0I7SUFDeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0Q0FBNEMsR0FBRyxHQUFHLENBQUEsQ0FBQyxxQ0FBcUM7SUFDcEcsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtRQUNqQyxPQUFPLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0tBQzNEO0lBQ0QsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEdB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
@@ -1,7 +1,15 @@
1
1
  export declare class TaskExecutionVisualizer {
2
2
  private numStarted;
3
3
  private numEnded;
4
+ private numBlocked;
5
+ private numFailed;
6
+ private numSucceeded;
7
+ private numExectuted;
8
+ private numCached;
9
+ private all;
10
+ addTasks(names: string[]): void;
4
11
  private getLine;
5
12
  begin(taskName: string): string;
6
- ended(taskName: string, verdict: string): string;
13
+ ended(taskName: string, verdict: 'OK' | 'FAIL' | 'UNKNOWN' | 'CRASH', executionType: 'EXECUTED' | 'CACHED' | 'UNKNOWN' | 'CANNOT_START'): string | undefined;
14
+ summary(durationInMillis: number): string;
7
15
  }
@@ -1,10 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TaskExecutionVisualizer = void 0;
4
+ const misc_1 = require("misc");
4
5
  class TaskExecutionVisualizer {
5
6
  constructor() {
6
7
  this.numStarted = 0;
7
8
  this.numEnded = 0;
9
+ this.numBlocked = 0;
10
+ this.numFailed = 0;
11
+ this.numSucceeded = 0;
12
+ this.numExectuted = 0;
13
+ this.numCached = 0;
14
+ this.all = 0;
15
+ }
16
+ addTasks(names) {
17
+ this.all += names.length;
8
18
  }
9
19
  getLine(taskName, text) {
10
20
  if (text === undefined) {
@@ -16,11 +26,60 @@ class TaskExecutionVisualizer {
16
26
  ++this.numStarted;
17
27
  return this.getLine(taskName);
18
28
  }
19
- ended(taskName, verdict) {
29
+ ended(taskName, verdict, executionType) {
30
+ if (executionType === 'CANNOT_START' || executionType === 'UNKNOWN') {
31
+ // It looks like UNKNOWN cannot really happen once the task is started, so we ignore it.
32
+ // CANNOT_START can happen but it clutters the output: after a (single) task that failed to build, there can be
33
+ // long chain of dependent tasks that will be CANNOT_START. printing these tasks will distract the user.
34
+ ++this.numBlocked;
35
+ return undefined;
36
+ }
20
37
  ++this.numEnded;
21
- const ret = this.getLine(taskName, verdict);
22
- return ret;
38
+ const cacheIndicator = (0, misc_1.switchOn)(executionType, {
39
+ CACHED: () => {
40
+ ++this.numCached;
41
+ return '🗃️ ';
42
+ },
43
+ EXECUTED: () => {
44
+ ++this.numExectuted;
45
+ return '󠀠✨';
46
+ },
47
+ });
48
+ const verdictIndicator = (0, misc_1.switchOn)(verdict, {
49
+ CRASH: () => {
50
+ ++this.numFailed;
51
+ return '❌';
52
+ },
53
+ FAIL: () => {
54
+ ++this.numFailed;
55
+ return '❌';
56
+ },
57
+ OK: () => {
58
+ ++this.numSucceeded;
59
+ return '✅';
60
+ },
61
+ UNKNOWN: () => '',
62
+ });
63
+ const full = `[${this.all}/${this.all}]`.length;
64
+ const progress = `[${this.numEnded}/${this.all}]`;
65
+ return `${progress.padStart(full, '.')} ${verdictIndicator} ${cacheIndicator} ${taskName}`;
66
+ }
67
+ summary(durationInMillis) {
68
+ const tried = this.numExectuted + this.numCached;
69
+ const width = this.all.toString().length;
70
+ return [
71
+ `Build Summary (${(durationInMillis / 1000).toFixed(1)}s):`,
72
+ `✅ Succeeded: ${this.numSucceeded.toString().padStart(width)}/${this.all}`,
73
+ this.numFailed > 0 ? `❌ Failed: ${this.numFailed.toString().padStart(width)}/${this.all}` : undefined,
74
+ this.numBlocked > 0 ? `⛔ Could not start: ${this.numBlocked.toString().padStart(width)}/${this.all}` : undefined,
75
+ ``,
76
+ `✨ Executed: ${this.numExectuted.toString().padStart(width)}/${tried}`,
77
+ `🗃️ Cache hit: ${this.numCached.toString().padStart(width)}/${tried} (${((100 * this.numCached) /
78
+ tried).toFixed(1)}%)`,
79
+ ]
80
+ .filter(at => at !== undefined)
81
+ .join('\n');
23
82
  }
24
83
  }
25
84
  exports.TaskExecutionVisualizer = TaskExecutionVisualizer;
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1leGVjdXRpb24tdmlzdWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXNrLWV4ZWN1dGlvbi12aXN1YWxpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQWEsdUJBQXVCO0lBQXBDO1FBQ1UsZUFBVSxHQUFHLENBQUMsQ0FBQTtRQUNkLGFBQVEsR0FBRyxDQUFDLENBQUE7SUFvQnRCLENBQUM7SUFsQlMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsSUFBYTtRQUM3QyxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsU0FBUyxRQUFRLEVBQUUsQ0FBQTtTQUMvRDtRQUVELE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLFNBQVMsUUFBUSxFQUFFLENBQUE7SUFDaEUsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFnQjtRQUNwQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUE7UUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQ3JDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQTtRQUNmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBQzNDLE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztDQUNGO0FBdEJELDBEQXNCQyJ9
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1leGVjdXRpb24tdmlzdWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXNrLWV4ZWN1dGlvbi12aXN1YWxpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUErQjtBQUUvQixNQUFhLHVCQUF1QjtJQUFwQztRQUNVLGVBQVUsR0FBRyxDQUFDLENBQUE7UUFDZCxhQUFRLEdBQUcsQ0FBQyxDQUFBO1FBQ1osZUFBVSxHQUFHLENBQUMsQ0FBQTtRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUE7UUFDYixpQkFBWSxHQUFHLENBQUMsQ0FBQTtRQUNoQixpQkFBWSxHQUFHLENBQUMsQ0FBQTtRQUNoQixjQUFTLEdBQUcsQ0FBQyxDQUFBO1FBQ2IsUUFBRyxHQUFHLENBQUMsQ0FBQTtJQW9GakIsQ0FBQztJQWxGQyxRQUFRLENBQUMsS0FBZTtRQUN0QixJQUFJLENBQUMsR0FBRyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUE7SUFDMUIsQ0FBQztJQUVPLE9BQU8sQ0FBQyxRQUFnQixFQUFFLElBQWE7UUFDN0MsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ3RCLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLFNBQVMsUUFBUSxFQUFFLENBQUE7U0FDL0Q7UUFFRCxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsVUFBVSxTQUFTLFFBQVEsRUFBRSxDQUFBO0lBQ2hFLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBZ0I7UUFDcEIsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFBO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBRUQsS0FBSyxDQUNILFFBQWdCLEVBQ2hCLE9BQTRDLEVBQzVDLGFBQWlFO1FBRWpFLElBQUksYUFBYSxLQUFLLGNBQWMsSUFBSSxhQUFhLEtBQUssU0FBUyxFQUFF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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "build-raptor",
3
- "version": "0.116.0",
3
+ "version": "0.118.0",
4
4
  "description": "CLI for super-fast monorepo builds",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -18,7 +18,7 @@
18
18
  "@aws-sdk/client-s3": "^3.623.0",
19
19
  "aws-sdk": "^2.1667.0",
20
20
  "build-raptor-dynamic-loader": "^0.62.0",
21
- "build-raptor-jest-reporter": "0.116.0",
21
+ "build-raptor-jest-reporter": "0.118.0",
22
22
  "escape-string-regexp": "^4.0.0",
23
23
  "execa": "^5.0.0",
24
24
  "fs-extra": "^9.0.0",