Support reusable workflow inputs and outputs
This commit is contained in:
@@ -4,6 +4,7 @@ import {TokenType} from "../../templates/tokens/types";
|
||||
import {ReusableWorkflowJob} from "../workflow-template";
|
||||
import {convertOn} from "./events";
|
||||
import {handleTemplateTokenErrors} from "./handle-errors";
|
||||
import {convertWorkflowJobInputs} from "./job/inputs";
|
||||
import {convertJobs} from "./jobs";
|
||||
|
||||
export function convertReferencedWorkflow(
|
||||
@@ -45,7 +46,7 @@ function convertReferencedWorkflowOn(context: TemplateContext, on: TemplateToken
|
||||
case TokenType.String: {
|
||||
const event = on.assertString("Reference workflow on value").value;
|
||||
if (event === "workflow_call") {
|
||||
// TODO: Validate workflow job trigger
|
||||
handleTemplateTokenErrors(on, context, undefined, () => convertWorkflowJobInputs(context, job));
|
||||
return;
|
||||
}
|
||||
break;
|
||||
@@ -56,7 +57,7 @@ function convertReferencedWorkflowOn(context: TemplateContext, on: TemplateToken
|
||||
for (const eventToken of events) {
|
||||
const event = eventToken.assertString(`Reference workflow on value ${eventToken}`).value;
|
||||
if (event === "workflow_call") {
|
||||
// TODO: Validate workflow job trigger
|
||||
handleTemplateTokenErrors(on, context, undefined, () => convertWorkflowJobInputs(context, job));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -73,7 +74,7 @@ function convertReferencedWorkflowOn(context: TemplateContext, on: TemplateToken
|
||||
}
|
||||
|
||||
if (pair.value.templateTokenType === TokenType.Null) {
|
||||
// TODO: Validate workflow job trigger
|
||||
handleTemplateTokenErrors(on, context, undefined, () => convertWorkflowJobInputs(context, job));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -84,10 +85,14 @@ function convertReferencedWorkflowOn(context: TemplateContext, on: TemplateToken
|
||||
case "inputs":
|
||||
job["input-definitions"] = definition.value.assertMapping(`on-workflow_call-${definition.key}`);
|
||||
break;
|
||||
|
||||
case "outputs":
|
||||
job.outputs = definition.value.assertMapping(`on-workflow_call-${definition.key}`);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Validate workflow job trigger
|
||||
handleTemplateTokenErrors(on, context, undefined, () => convertWorkflowJobInputs(context, job));
|
||||
return;
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user