const patterns = require('@freesewing/pattern-info').list const path = require('path') const spawn = require('child_process').spawn const dir = path.join(__dirname, '..') const base = 'aaron' const buildPatternWorkbenches = async (patterns) => { for (let pattern of patterns) { let cwd = path.join(dir, 'packages', pattern, 'example') await runScript(cwd, 'rm -rf node_modules yarn.lock') await runScript(cwd, 'yarn install') await runScript(cwd, 'yarn build') await runScript(cwd, 'netlify deploy --prod') } } const runScript = (cwd, command) => new Promise((resolve, reject) => { const script = spawn(command, [], { cwd, shell: true }) script.stdout.on('data', (data) => process.stdout.write(data)) script.on('error', (data) => reject(`Error running ${command} in ${dir}: ${data}`)) script.on('exit', () => resolve()) }).catch((err) => console.log(err)) buildPatternWorkbenches(patterns)