• Bruce Dawson's avatar
    Check whether goma is running when it is enabled · b7ddc5a0
    Bruce Dawson authored
    One of the mistakes one can make when running ninja is having goma
    enabled (use_goma=true in args.gn) but not having goma running. This can
    lead to ~1,000 failed compile steps, which is messy.
    
    This change teaches autoninja.py to check whether goma is running. If
    not then it tells autoninja to just print a warning message. The
    check costs roughly 30 ms which seems reasonable.
    
    In fact, because this change also switches away from vpython (necessary
    to use python3 to use subprocess.run) it actually runs about 600 ms
    _faster_ than before this change.
    
    If build acceleration is requested through use_rbe then no checking for
    whether the service is running is done. That could be added in the
    future.
    
    autoninja.py could auto-start goma but that is error prone and has
    limited additional value.
    
    This was tested on Linux, OSX, and Windows.
    
    Bug: 868590, b/174673874
    Change-Id: Ie773e574878471e5136b9b82d52f86af3d848318
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2627014
    Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
    Reviewed-by: 's avatarYoshisato Yanagisawa <yyanagisawa@google.com>
    b7ddc5a0
autoninja 1.13 KB