From 22e2ac270b356aa6f971dc763650b4628eff3664 Mon Sep 17 00:00:00 2001 From: Ryan McKinley Date: Wed, 3 Jul 2019 08:17:18 -0700 Subject: [PATCH] grafana/toolkit: copy sass files (#17888) include sass files in toolkit --- .../src/cli/tasks/toolkit.build.ts | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/packages/grafana-toolkit/src/cli/tasks/toolkit.build.ts b/packages/grafana-toolkit/src/cli/tasks/toolkit.build.ts index 975b1d6fa79..5f01d2fe2dd 100644 --- a/packages/grafana-toolkit/src/cli/tasks/toolkit.build.ts +++ b/packages/grafana-toolkit/src/cli/tasks/toolkit.build.ts @@ -5,6 +5,8 @@ import chalk from 'chalk'; import { useSpinner } from '../utils/useSpinner'; import { Task, TaskRunner } from './task'; +const path = require('path'); + let distDir: string, cwd: string; // @ts-ignore @@ -74,6 +76,28 @@ const moveFiles = () => { })(); }; +const copySassFiles = () => { + const files = ['_variables.generated.scss', '_variables.dark.generated.scss', '_variables.light.generated.scss']; + // @ts-ignore + return useSpinner(`Copy scss files ${files.join(', ')} files`, async () => { + const sassDir = path.resolve(cwd, '../../public/sass/'); + const promises = files.map(file => { + return new Promise((resolve, reject) => { + const name = file.replace('.generated', ''); + fs.copyFile(`${sassDir}/${file}`, `${distDir}/sass/${name}`, err => { + if (err) { + reject(err); + return; + } + resolve(); + }); + }); + }); + + await Promise.all(promises); + })(); +}; + const toolkitBuildTaskRunner: TaskRunner = async () => { cwd = changeCwdToGrafanaToolkit(); distDir = `${cwd}/dist`; @@ -84,7 +108,9 @@ const toolkitBuildTaskRunner: TaskRunner = async () => { await compile(); await preparePackage(pkg); fs.mkdirSync('./dist/bin'); + fs.mkdirSync('./dist/sass'); await moveFiles(); + await copySassFiles(); restoreCwd(); };