Skip to content

Instantly share code, notes, and snippets.

@mehulkar
Created March 13, 2023 06:48
Show Gist options
  • Save mehulkar/129123c950c823acdd606983ee27778d to your computer and use it in GitHub Desktop.
Save mehulkar/129123c950c823acdd606983ee27778d to your computer and use it in GitHub Desktop.
run summary schema
interface RunSummary {
id: string,
turboVersion: string,
globalHashSummary: globalHashSummary,
packages: string[],
executionSummary: executionSummary,
tasks: taskSummary[],
}
interface expandedInputs {
[key: string]: string[]
}
// Same as resolvedTaskDefinition, but all keys are optional. Can we combine somehow?
interface taskDefinition {
outputs?: string[],
inputs?: string[],
cache?: boolean,
dependsOn?: string[],
outputMode?: string,
env?: string[],
persistent?: boolean,
}
interface turboPipeline {
[key: string]: resolvedTaskDefinition
}
interface globalHashSummary {
globalFileHashMap: expandedInputs,
rootExternalDepsHash: string,
globalCacheKey: string,
pipeline: turboPipeline
}
interface executionSummary {
success: number,
failed: number,
cached: number,
attempted: number,
}
interface taskExecutionSummary {
start: Date,
duration: number,
status: string,
error: string | null
}
interface resolvedTaskDefinition {
outputs: string[],
inputs: string[],
cache: boolean,
dependsOn: string[],
outputMode: string,
env: string[],
persistent: boolean,
}
interface environmentVariables {
configured: string[],
inferred: string[],
global: string[],
}
interface taskSummary {
taskId: string,
task: string,
package: string,
hash: string,
cacheState: {},
command: string,
outputs: string[],
excludedOutputs: string[],
logFile: string,
dependencies: string[],
dependents: string[],
resolvedTaskDefinition: resolvedTaskDefinition,
expandedInputs: expandedInputs,
expandedOutputs: string[],
framework: string,
environmentVariables: environmentVariables,
execution: taskExecutionSummary,
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment