1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-10-22 19:26:13 +02:00
metamask-extension/development/build/etc.js
2020-11-02 17:41:28 -06:00

46 lines
1.2 KiB
JavaScript

const { promises: fs } = require('fs')
const gulp = require('gulp')
const gulpZip = require('gulp-zip')
const del = require('del')
const pify = require('pify')
const pump = pify(require('pump'))
const baseManifest = require('../../app/manifest/_base.json')
const { createTask, composeParallel } = require('./task')
module.exports = createEtcTasks
function createEtcTasks({ browserPlatforms, livereload }) {
const clean = createTask('clean', async function clean() {
await del(['./dist/*'])
await Promise.all(
browserPlatforms.map(async (platform) => {
await fs.mkdir(`./dist/${platform}`, { recursive: true })
}),
)
})
const reload = createTask('reload', function devReload() {
livereload.listen({ port: 35729 })
})
// zip tasks for distribution
const zip = createTask(
'zip',
composeParallel(
...browserPlatforms.map((platform) => createZipTask(platform)),
),
)
return { clean, reload, zip }
}
function createZipTask(target) {
return async () => {
await pump(
gulp.src(`dist/${target}/**`),
gulpZip(`metamask-${target}-${baseManifest.version}.zip`),
gulp.dest('builds'),
)
}
}