diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2019-08-26 13:35:57 +0200 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2019-08-28 17:19:00 +0200 |
| commit | ca022b8540b993a2f6bcdb6f33c751f4b5a56b58 (patch) | |
| tree | 319285377f6e5e19abd513a9194f3685d9a4d9a4 /gui/scripts | |
| parent | 40f2a6d3397694d3bb0d4025daee00f61f9c92d4 (diff) | |
| download | mullvadvpn-ca022b8540b993a2f6bcdb6f33c751f4b5a56b58.tar.xz mullvadvpn-ca022b8540b993a2f6bcdb6f33c751f4b5a56b58.zip | |
Switch build pipeline to Gulp
Diffstat (limited to 'gui/scripts')
| -rw-r--r-- | gui/scripts/serve.js | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/gui/scripts/serve.js b/gui/scripts/serve.js deleted file mode 100644 index 01eadbc65f..0000000000 --- a/gui/scripts/serve.js +++ /dev/null @@ -1,95 +0,0 @@ -const { spawn } = require('child_process'); -const path = require('path'); -const TscWatchClient = require('tsc-watch/client'); -const electron = require('electron'); -const browserSync = require('browser-sync'); -const browserSyncConnectUtils = require('browser-sync/dist/connect-utils'); -const bsync = browserSync.create(); - -const getRootUrl = (options) => { - const port = options.get('port'); - return `http://localhost:${port}`; -}; - -const getClientUrl = (options) => { - const pathname = browserSyncConnectUtils.clientScript(options); - return getRootUrl(options) + pathname; -}; - -function runElectron(browserSyncUrl) { - const child = spawn(electron, ['.'], { - env: { - ...{ - NODE_ENV: 'development', - BROWSER_SYNC_CLIENT_URL: browserSyncUrl, - }, - ...process.env, - }, - stdio: 'inherit', - }); - child.once('close', () => { - process.exit(); - }); - - return child; -} - -function startBrowserSync() { - bsync.init( - { - ui: false, - // Port 35829 = LiveReload's default port 35729 + 100. - // If the port is occupied, Browsersync uses next free port automatically. - port: 35829, - ghostMode: false, - open: false, - notify: false, - logSnippet: false, - socket: { - // Use the actual port here. - domain: getRootUrl, - }, - }, - (err, bs) => { - if (err) return console.error(err); - - const browserSyncUrl = getClientUrl(bs.options); - - let child = runElectron(browserSyncUrl); - - bsync - .watch(['build/src/config.json', 'build/src/main/**/*', 'build/src/shared/**/*']) - .on('change', () => { - child.removeAllListeners('close'); - child.once('close', () => { - child = runElectron(browserSyncUrl); - }); - child.kill(); - }); - - bsync.watch(['build/src/renderer/**/*']).on('change', bsync.reload); - }, - ); -} - -function prepareWatchArguments(projectPath) { - return ['--noClear', '--sourceMap', '--project', projectPath]; -} - -const watch = new TscWatchClient(); -watch.start(...prepareWatchArguments(path.resolve(__dirname, '..'))); -watch.on('first_success', () => { - startBrowserSync(); -}); - -process.on('exit', () => { - watch.kill(); -}); - -process.on('SIGINT', () => { - process.exit(); -}); - -process.on('SIGTERM', () => { - process.exit(); -}); |
