summaryrefslogtreecommitdiffstats
path: root/devtools/client/debugger/bin/watch.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/debugger/bin/watch.js')
-rw-r--r--devtools/client/debugger/bin/watch.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/devtools/client/debugger/bin/watch.js b/devtools/client/debugger/bin/watch.js
new file mode 100644
index 0000000000..d4d02e18ca
--- /dev/null
+++ b/devtools/client/debugger/bin/watch.js
@@ -0,0 +1,31 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
+
+var chokidar = require("chokidar");
+var shell = require("shelljs");
+var path = require("path");
+
+const geckoPath = path.join(__dirname, "../../../..");
+const srcPath = path.join(__dirname, "../src");
+function watch() {
+ console.log("Watching for src changes");
+ const watcher = chokidar.watch(srcPath);
+ let working = false;
+ watcher.on("change", filePath => {
+ const relPath = path.relative(srcPath, filePath);
+ console.log(`Updating ${relPath}`);
+ if (working) {
+ return;
+ }
+ working = true;
+ const start = new Date();
+
+ shell.exec(`cd ${geckoPath}; ./mach build faster; cd -;`, { silent: true });
+ working = false;
+ const end = Math.round((new Date() - start) / 1000);
+ console.log(` Built in ${end}s`);
+ });
+}
+
+watch();