diff --git a/app/scripts/modules/core/src/domain/IExecutionStage.ts b/app/scripts/modules/core/src/domain/IExecutionStage.ts index f3e22bf0386..17891e12df6 100644 --- a/app/scripts/modules/core/src/domain/IExecutionStage.ts +++ b/app/scripts/modules/core/src/domain/IExecutionStage.ts @@ -59,6 +59,7 @@ export interface IExecutionStageSummary extends IOrchestratedItem { endTime: number; extraLabelLines?: (stage: IExecutionStageSummary) => number; firstActiveStage?: number; + graphRowOverride?: number; group?: string; groupStages?: IExecutionStageSummary[]; id: string; diff --git a/app/scripts/modules/core/src/pipeline/config/graph/PipelineGraph.tsx b/app/scripts/modules/core/src/pipeline/config/graph/PipelineGraph.tsx index 8096e94d534..f17974fb713 100644 --- a/app/scripts/modules/core/src/pipeline/config/graph/PipelineGraph.tsx +++ b/app/scripts/modules/core/src/pipeline/config/graph/PipelineGraph.tsx @@ -194,6 +194,7 @@ export class PipelineGraph extends React.Component (node.graphRowOverride ? node.graphRowOverride : 1000), // same highest parent, prefer farthest last node (node: IPipelineGraphNode) => 1 - node.lastPhase, // same highest parent, prefer fewer terminal children if any diff --git a/app/scripts/modules/core/src/pipeline/config/graph/pipelineGraph.service.ts b/app/scripts/modules/core/src/pipeline/config/graph/pipelineGraph.service.ts index c212bfe1876..a204ed1d5c3 100644 --- a/app/scripts/modules/core/src/pipeline/config/graph/pipelineGraph.service.ts +++ b/app/scripts/modules/core/src/pipeline/config/graph/pipelineGraph.service.ts @@ -32,6 +32,7 @@ export interface IPipelineGraphNode { parents: IPipelineGraphNode[]; placeholder?: boolean; root?: boolean; + graphRowOverride?: number; row?: number; // Added after the fact in PipelineGraphDirective x?: number; // Added after the fact in PipelineGraphDirective y?: number; // Added after the fact in PipelineGraphDirective @@ -70,6 +71,7 @@ export class PipelineGraphService { executionId: execution.id, executionStage: true, extraLabelLines: stage.extraLabelLines ? stage.extraLabelLines(stage) : 0, + graphRowOverride: stage.graphRowOverride || 0, hasNotStarted: stage.hasNotStarted, id: stage.refId, index: idx, @@ -120,6 +122,7 @@ export class PipelineGraphService { const node: IPipelineGraphNode = { childLinks: [], children: [], + graphRowOverride: stage.graphRowOverride || 0, hasWarnings: !!warnings, id: stage.refId, index: idx, diff --git a/app/scripts/modules/core/src/pipeline/service/ExecutionsTransformer.ts b/app/scripts/modules/core/src/pipeline/service/ExecutionsTransformer.ts index 35136e3cd22..ed5b96ef667 100644 --- a/app/scripts/modules/core/src/pipeline/service/ExecutionsTransformer.ts +++ b/app/scripts/modules/core/src/pipeline/service/ExecutionsTransformer.ts @@ -360,6 +360,7 @@ export class ExecutionsTransformer { group: context.group, id: stage.id, index: undefined, + graphRowOverride: context.graphRowOverride || 0, masterStage: stage, name: stage.name, refId: stage.refId,