depot_tools path madness when building chromeos-chrome |
||
Issue descriptionI get the following failure when I try to build a samus image (which I haven't done in a long time): chromeos-chrome-52.0.2721.0_rc-r1: ________ running '/usr/bin/python2.7 src/tools/clang/scripts/update.py --if-needed' in '/home/derat/chrome_root' chromeos-chrome-52.0.2721.0_rc-r1: Updating Clang to 267383-1... chromeos-chrome-52.0.2721.0_rc-r1: Downloading prebuilt clang chromeos-chrome-52.0.2721.0_rc-r1: Downloading https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-267383-1.tgz .......... Done. chromeos-chrome-52.0.2721.0_rc-r1: Creating directory /home/derat/chrome_root/src/third_party/llvm-build/Release+Asserts chromeos-chrome-52.0.2721.0_rc-r1: clang 267383-1 unpacked chromeos-chrome-52.0.2721.0_rc-r1: Running python /home/derat/chrome_root/src/build/download_gold_plugin.py chromeos-chrome-52.0.2721.0_rc-r1: Traceback (most recent call last): chromeos-chrome-52.0.2721.0_rc-r1: File "/home/derat/chrome_root/src/build/download_gold_plugin.py", line 49, in <module> chromeos-chrome-52.0.2721.0_rc-r1: sys.exit(main()) chromeos-chrome-52.0.2721.0_rc-r1: File "/home/derat/chrome_root/src/build/download_gold_plugin.py", line 43, in main chromeos-chrome-52.0.2721.0_rc-r1: stderr=open('/dev/null', 'w')) chromeos-chrome-52.0.2721.0_rc-r1: File "/usr/lib64/python2.7/subprocess.py", line 540, in check_call chromeos-chrome-52.0.2721.0_rc-r1: raise CalledProcessError(retcode, cmd) chromeos-chrome-52.0.2721.0_rc-r1: subprocess.CalledProcessError: Command '['python', '/home/derat/depot_tools/gsutil.py', 'cp', 'gs://chromium-browser-clang/Linux_x64/llvmgold-267383-1.tgz', 'llvmgold-267383-1.tgz']' returned non-zero exit status 1 I don't have a depot_tools subdirectory under my home dir in my chroot, but I do have one at /mnt/host/depot_tools. src_unpack() contains the following: local WHOAMI=$(whoami) export EGCLIENT="${EGCLIENT:-/home/${WHOAMI}/depot_tools/gclient}" export ENINJA="${ENINJA:-/home/${WHOAMI}/depot_tools/ninja}" export EGN="${EGN:-/home/${WHOAMI}/depot_tools/gn}" , although I don't think that that's being used here -- I get this failure even after manually exporting those variables with the proper /mnt/host/depot_tools paths. download_gold_plugin.py looks like it uses find_depot_tools.py, which looks in $PATH. /mnt/host/depot_tools looks like it's in my shell's path in the chroot, so I'm not sure why that isn't working. I updated find_depot_tools.add_depot_tools_to_path() to just return "/mnt/host/depot_tools", but now I'm getting errors like this: chromeos-chrome-9999: ________ running '/usr/bin/python2.7 src/build/android/play_services/update.py download' in '/home/derat/chrome_root' chromeos-chrome-9999: Traceback (most recent call last): chromeos-chrome-9999: File "src/build/android/play_services/update.py", line 30, in <module> chromeos-chrome-9999: import breakpad chromeos-chrome-9999: ImportError: No module named breakpad chromeos-chrome-9999: Error: Command '/usr/bin/python2.7 src/build/android/play_services/update.py download' returned non-zero exit status 1 in /home/derat/chrome_root As an aside, it's weird how the src_unpack() code that I quoted has those paths hardcoded. mojo-9999.ebuild instead has: export EGCLIENT="${EGCLIENT:-/mnt/host/depot_tools/gclient}" chromium-source.eclass also has some similar code: export EGCLIENT="${EGCLIENT:-/home/${WHOAMI}/depot_tools/gclient}"
,
May 2 2016
Oh, huh; I have that symlink too. Maybe I accidentally looked for it outside of the chroot before? It failed for a different reason: $ python /home/derat/depot_tools/gsutil.py cp gs://chromium-browser-clang/Linux_x64/llvmgold-267383-1.tgz /tmp/llvmgold-267383-1.tgz A newer version of gsutil (4.19) is available than the version you are running (4.13). A detailed log of gsutil release changes is available at https://pub.storage.googleapis.com/gsutil_ReleaseNotes.txt if you would like to read them before updating. Would you like to update [Y/n]? INFO 0502 14:57:30.946952 oauth2_client.py] Attempted to retrieve an access token from an invalid refresh token. Two common cases in which you will see this error are: 1. Your refresh token was revoked. 2. Your refresh token was typed incorrectly. Your "Oauth 2.0 User Account" credentials are invalid. For more help, see "gsutil help creds", or re-run the gsutil config command (see "gsutil help config"). Failure: invalid_grant. Running "gsutil config", going through the OAuth2 dance, and choosing an arbitrary default project ID seems to make that command succeed, at least. I started a build using non-local source in the meantime, but when it finishes I'll see if the local build works now.
,
May 2 2016
That's... odd. My gsutil.py (in /home/stevenjb/depot_tools in the chroot) is 4.13, and I don't get that warning.
,
May 2 2016
Maybe see also comments in issue 589672
,
Jul 12 2016
I'm just using the prebuilt now and sticking to the "simple Chrome" workflow, which seems like a better approach for this. |
||
►
Sign in to add a comment |
||
Comment 1 by steve...@chromium.org
, May 2 2016