Add option to clean.py to only remove dist and out dirs
authorKevin Sawicki <kevinsawicki@gmail.com>
Mon, 20 Mar 2017 17:32:16 +0000 (10:32 -0700)
committerKevin Sawicki <kevinsawicki@gmail.com>
Mon, 20 Mar 2017 17:33:04 +0000 (10:33 -0700)
docs/development/build-instructions-linux.md
docs/development/build-instructions-osx.md
docs/development/build-instructions-windows.md
package.json
script/clean-build.py [deleted file]
script/clean.py

index 296f08a..e6b5004 100644 (file)
@@ -123,7 +123,7 @@ To clean only `out` and `dist` directories:
 $ npm run clean-build
 ```
 
-Note that both commands will require to do run bootstrap again .
+**Note:** Both clean commands require running `bootstrap` again before building.
 
 ## Troubleshooting
 
index 2d7cc36..d0e95aa 100644 (file)
@@ -91,7 +91,7 @@ To clean only `out` and `dist` directories:
 $ npm run clean-build
 ```
 
-Note that both commands will require to do run bootstrap again .
+**Note:** Both clean commands require running `bootstrap` again before building.
 
 ## Tests
 
index c66b8b4..4f7335e 100644 (file)
@@ -89,7 +89,7 @@ To clean only `out` and `dist` directories:
 $ npm run clean-build
 ```
 
-Note that both commands will require to do run bootstrap again .
+**Note:** Both clean commands require running `bootstrap` again before building.
 
 ## Tests
 
index ef0a405..8de882f 100644 (file)
@@ -30,7 +30,7 @@
     "bump-version": "./script/bump-version.py",
     "build": "python ./script/build.py -c D",
     "clean": "python ./script/clean.py",
-    "clean-build": "python ./script/clean-build.py",
+    "clean-build": "python ./script/clean.py --build",
     "coverage": "npm run instrument-code-coverage && npm test -- --use-instrumented-asar",
     "instrument-code-coverage": "electabul instrument --input-path ./lib --output-path ./out/coverage/electron.asar",
     "lint": "npm run lint-js && npm run lint-cpp && npm run lint-py && npm run lint-api-docs-js && npm run lint-api-docs",
diff --git a/script/clean-build.py b/script/clean-build.py
deleted file mode 100755 (executable)
index 7dad790..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env python
-
-import os
-import sys
-
-from lib.util import rm_rf
-
-
-SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
-
-
-def main():
-  os.chdir(SOURCE_ROOT)
-  rm_rf('dist')
-  rm_rf('out')
-
-if __name__ == '__main__':
-  sys.exit(main())
index 669b6b4..c63bdbb 100755 (executable)
@@ -1,5 +1,6 @@
 #!/usr/bin/env python
 
+import argparse
 import os
 import sys
 
@@ -11,13 +12,34 @@ SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
 
 def main():
   os.chdir(SOURCE_ROOT)
-  rm_rf('node_modules')
-  rm_rf('dist')
-  rm_rf('out')
-  rm_rf('spec/node_modules')
-  rm_rf('vendor/brightray/vendor/download/libchromiumcontent')
-  rm_rf('vendor/brightray/vendor/libchromiumcontent/src')
-  rm_rf(os.path.expanduser('~/.node-gyp'))
+
+  args = parse_args()
+
+  remove_directory('dist')
+  remove_directory('out')
+
+  if not args.build:
+    remove_directory('node_modules')
+    remove_directory('spec/node_modules')
+
+    remove_directory('vendor/brightray/vendor/download/libchromiumcontent')
+    remove_directory('vendor/brightray/vendor/libchromiumcontent/src')
+
+    remove_directory(os.path.expanduser('~/.node-gyp'))
+
+
+def parse_args():
+  parser = argparse.ArgumentParser(description='Remove generated and' \
+                                               'downloaded build files')
+  parser.add_argument('-b', '--build',
+                      help='Only remove out and dist directories',
+                      action='store_true')
+  return parser.parse_args()
+
+
+def remove_directory(directory):
+  print 'Removing %s' % directory
+  rm_rf(directory)
 
 
 if __name__ == '__main__':