pw_env_setup: Allow disabling spinner
Change-Id: Ic5444577bb1caf949f715f7e774b4960d641c0d8
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/29160
Pigweed-Auto-Submit: Rob Mohr <mohrr@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Keir Mierle <keir@google.com>
diff --git a/pw_cli/py/pw_cli/env.py b/pw_cli/py/pw_cli/env.py
index eef188d..7b03e7f 100644
--- a/pw_cli/py/pw_cli/env.py
+++ b/pw_cli/py/pw_cli/env.py
@@ -43,6 +43,9 @@
parser.add_allowed_suffix('_CIPD_INSTALL_DIR')
+ parser.add_var('PW_ENVSETUP_DISABLE_SPINNER',
+ type=envparse.strict_bool,
+ default=False)
parser.add_var('PW_DOCTOR_SKIP_CIPD_CHECKS')
parser.add_var('PW_ACTIVATE_SKIP_CHECKS',
type=envparse.strict_bool,
diff --git a/pw_env_setup/py/pw_env_setup/spinner.py b/pw_env_setup/py/pw_env_setup/spinner.py
index 5060395..44990be 100644
--- a/pw_env_setup/py/pw_env_setup/spinner.py
+++ b/pw_env_setup/py/pw_env_setup/spinner.py
@@ -14,10 +14,13 @@
"""Spinner!"""
import contextlib
+import os
import sys
import threading
import time
+PW_ENVSETUP_DISABLE_SPINNER = os.environ.get('PW_ENVSETUP_DISABLE_SPINNER')
+
class Spinner(object): # pylint: disable=useless-object-inheritance
"""Spinner!"""
@@ -39,11 +42,17 @@
i = (i + 1) % len(chars)
def start(self):
+ if PW_ENVSETUP_DISABLE_SPINNER:
+ return
+
self._done = False
self._thread = threading.Thread(target=self._spin)
self._thread.start()
def stop(self):
+ if PW_ENVSETUP_DISABLE_SPINNER:
+ return
+
assert self._thread
self._done = True
self._thread.join()