pw_env_setup: Increase CIPD logging
Change-Id: Ifebdf36fce25a2b757b76311b5e7d5cc4bb4ec3c
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/49340
Pigweed-Auto-Submit: Rob Mohr <mohrr@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Michael Spang <spang@google.com>
diff --git a/pw_env_setup/py/pw_env_setup/cipd_setup/update.py b/pw_env_setup/py/pw_env_setup/cipd_setup/update.py
index 41b5b0e..ef91b28 100755
--- a/pw_env_setup/py/pw_env_setup/cipd_setup/update.py
+++ b/pw_env_setup/py/pw_env_setup/cipd_setup/update.py
@@ -28,7 +28,6 @@
import re
import subprocess
import sys
-import tempfile
def parse(argv=None):
@@ -229,32 +228,35 @@
root_install_dir,
os.path.basename(os.path.splitext(package_file)[0]))
+ name = os.path.basename(install_dir)
+
cmd = [
cipd,
'ensure',
'-ensure-file', ensure_file,
'-root', install_dir,
- '-log-level', 'warning',
+ '-log-level', 'debug',
+ '-json-output',
+ os.path.join(root_install_dir, '{}-output.json'.format(name)),
'-cache-dir', cache_dir,
'-max-threads', '0', # 0 means use CPU count.
] # yapf: disable
# TODO(pwbug/135) Use function from common utility module.
- with tempfile.TemporaryFile(mode='w+') as temp:
- print(*cmd, file=temp)
- try:
+ log = os.path.join(root_install_dir, '{}.log'.format(name))
+ try:
+ with open(log, 'w') as outs:
+ print(*cmd, file=outs)
subprocess.check_call(cmd,
- stdout=temp,
+ stdout=outs,
stderr=subprocess.STDOUT)
- except subprocess.CalledProcessError:
- temp.seek(0)
- sys.stderr.write(temp.read())
+ except subprocess.CalledProcessError:
+ with open(log, 'r') as ins:
+ sys.stderr.write(ins.read())
raise
# Set environment variables so tools can later find things under, for
# example, 'share'.
- name = os.path.basename(install_dir)
-
if env_vars:
# Some executables get installed at top-level and some get
# installed under 'bin'.