1
0
Fork 0
freesewing/scripts/workbenches.js
2021-01-17 13:31:58 +01:00

26 lines
938 B
JavaScript

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)