From 652a2e9276e0e359aaaf7339fd4dc02510a7169c Mon Sep 17 00:00:00 2001 From: Christopher Zorn Date: Tue, 31 Aug 2021 15:52:55 -0700 Subject: [PATCH] Copy file mode by getting original mode via stats Signed-off-by: Christopher Zorn --- .../src/scaffolder/actions/builtin/fetch/template.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/fetch/template.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/fetch/template.ts index 425623d154..13dfb2486e 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/fetch/template.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/fetch/template.ts @@ -262,8 +262,9 @@ export function createFetchTemplateAction(options: { ); await fs.copy(inputFilePath, outputPath); } else { + const statsObj = await fs.stat(inputFilePath); ctx.logger.info( - `Writing file ${location} to template output path.`, + `Writing file ${location} to template output path. mode: ${statsObj.mode}`, ); const inputFileContents = await fs.readFile(inputFilePath, 'utf-8'); await fs.outputFile( @@ -272,6 +273,7 @@ export function createFetchTemplateAction(options: { ? templater.renderString(inputFileContents, context) : inputFileContents, ); + await fs.chmod(outputPath, statsObj.mode); } } }