From 92405f32bb0cf4acd0d860b354fca411281f62ee Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 24 Nov 2021 13:55:28 +0100 Subject: [PATCH] bug: should check the children of the first parse, not the root. Signed-off-by: blam --- ...WorkflowRunner.test.ts => NunjucksWorkflowRunner.test.ts} | 0 .../src/scaffolder/tasks/NunjucksWorkflowRunner.ts | 5 +++-- 2 files changed, 3 insertions(+), 2 deletions(-) rename plugins/scaffolder-backend/src/scaffolder/tasks/{DefaultWorkflowRunner.test.ts => NunjucksWorkflowRunner.test.ts} (100%) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DefaultWorkflowRunner.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts similarity index 100% rename from plugins/scaffolder-backend/src/scaffolder/tasks/DefaultWorkflowRunner.test.ts rename to plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.ts index c66d967103..1139ce41c5 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.ts @@ -114,9 +114,10 @@ export class NunjucksWorkflowRunner implements WorkflowRunner { private isSingleTemplateString(input: string) { const { parser, nodes } = require('nunjucks'); const parsed = parser.parse(input, {}, this.nunjucksOptions); + return ( parsed.children.length === 1 && - !(parsed.children[0] instanceof nodes.TemplateData) + !(parsed.children[0]?.children?.[0] instanceof nodes.TemplateData) ); } @@ -147,7 +148,7 @@ export class NunjucksWorkflowRunner implements WorkflowRunner { return JSON.parse(templated); } } catch (ex) { - this.options.logger.error( + console.error( `Failed to parse template string: ${value} with error ${ex.message}`, ); }