To speed up builds, we should enable Goma on the iOS API Framework bot and trybot: https://build.chromium.org/p/client.webrtc/builders/iOS%20API%20Framework%20Builder https://build.chromium.org/p/tryserver.webrtc/builders/ios_api_framework It should be fairly easy since the script supports custom GN args: https://chromium.googlesource.com/external/webrtc/+/master/tools-webrtc/ios/build_ios_libs.py The recipe to be updated: https://chromium.googlesource.com/chromium/tools/build/+/master/scripts/slave/recipes/webrtc/ios_api_framework.py I did similar work for the Android counterpart recipe so it can be used for the goma parts: https://chromium.googlesource.com/chromium/tools/build/+/master/scripts/slave/recipes/webrtc/android_archive.py
I was slightly incorrect, the script does not have a flag for the custom GN args, but some support inside. It will need to add such a flag first. For that one can look at https://chromium.googlesource.com/external/webrtc/+/master/tools-webrtc/android/build_aar.py
The following revision refers to this bug: https://chromium.googlesource.com/external/webrtc.git/+/585209b36ed7bc6b7023e8bc91837599c26de2e2 commit 585209b36ed7bc6b7023e8bc91837599c26de2e2 Author: mbonadei <mbonadei@webrtc.org> Date: Mon Feb 13 12:59:27 2017 Adding --use-goma and --extra-gn-args flags to build_ios_libs.py BUG= chromium:690916 NOTRY=True Review-Url: https://codereview.webrtc.org/2692443003 Cr-Commit-Position: refs/heads/master@{#16579} [modify] https://crrev.com/585209b36ed7bc6b7023e8bc91837599c26de2e2/tools-webrtc/ios/build_ios_libs.py
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/42340126ce08355130742f9922c1a6bd28b96e8c commit 42340126ce08355130742f9922c1a6bd28b96e8c Author: Mirko Bonadei <mbonadei@chromium.org> Date: Mon Feb 13 14:47:35 2017 Using goma to build in ios_api_framework.py BUG= chromium:690916 Change-Id: I7a115b0c25583a74235290b23a07837610a1e210 Reviewed-on: https://chromium-review.googlesource.com/441046 Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> Reviewed-by: Henrik Kjellander <kjellander@chromium.org> [modify] https://crrev.com/42340126ce08355130742f9922c1a6bd28b96e8c/scripts/slave/recipes/webrtc/ios_api_framework.py [modify] https://crrev.com/42340126ce08355130742f9922c1a6bd28b96e8c/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_ok.json [modify] https://crrev.com/42340126ce08355130742f9922c1a6bd28b96e8c/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_failure.json [modify] https://crrev.com/42340126ce08355130742f9922c1a6bd28b96e8c/scripts/slave/recipes/webrtc/ios_api_framework.expected/trybot_build.json
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/d5ed6d53816b0ca88144da1491b66b5be8cd877d commit d5ed6d53816b0ca88144da1491b66b5be8cd877d Author: Mirko Bonadei <mbonadei@chromium.org> Date: Mon Feb 13 17:35:31 2017 Revert "Using goma to build in ios_api_framework.py" This reverts commit 42340126ce08355130742f9922c1a6bd28b96e8c. Reason for revert: Wrongly formatted flag: target_os="ios" ios_enable_code_signing=false use_xcode_clang=true is_component_build=false is_debug=false target_cpu="arm" ios_deployment_target="8.0" rtc_libvpx_build_vp9=false enable_ios_bitcode=true use_goma=true enable_dsyms=true enable_stripping=true "goma_dir=/b/c/cipd/goma" It shoud be goma_dir="/b/c/cipd/goma" Original change's description: > Using goma to build in ios_api_framework.py > > BUG= chromium:690916 > > Change-Id: I7a115b0c25583a74235290b23a07837610a1e210 > Reviewed-on: https://chromium-review.googlesource.com/441046 > Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> > Reviewed-by: Henrik Kjellander <kjellander@chromium.org> > TBR=kjellander@chromium.org,mbonadei@chromium.org,chromium-reviews@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:690916 Change-Id: I0f5395b51e6074d1eb8f06776dfb61289018b6b3 Reviewed-on: https://chromium-review.googlesource.com/441810 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> [modify] https://crrev.com/d5ed6d53816b0ca88144da1491b66b5be8cd877d/scripts/slave/recipes/webrtc/ios_api_framework.py [modify] https://crrev.com/d5ed6d53816b0ca88144da1491b66b5be8cd877d/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_ok.json [modify] https://crrev.com/d5ed6d53816b0ca88144da1491b66b5be8cd877d/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_failure.json [modify] https://crrev.com/d5ed6d53816b0ca88144da1491b66b5be8cd877d/scripts/slave/recipes/webrtc/ios_api_framework.expected/trybot_build.json
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b commit 1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b Author: Mirko Bonadei <mbonadei@chromium.org> Date: Mon Feb 13 19:58:32 2017 Reland "Using goma to build in ios_api_framework.py"" This reverts commit d5ed6d53816b0ca88144da1491b66b5be8cd877d. Reason for revert: trying to fix the problem. Original change's description: > Revert "Using goma to build in ios_api_framework.py" > > This reverts commit 42340126ce08355130742f9922c1a6bd28b96e8c. > > Reason for revert: Wrongly formatted flag: > target_os="ios" ios_enable_code_signing=false use_xcode_clang=true is_component_build=false is_debug=false target_cpu="arm" ios_deployment_target="8.0" rtc_libvpx_build_vp9=false enable_ios_bitcode=true use_goma=true enable_dsyms=true enable_stripping=true "goma_dir=/b/c/cipd/goma" > > It shoud be goma_dir="/b/c/cipd/goma" > > Original change's description: > > Using goma to build in ios_api_framework.py > > > > BUG= chromium:690916 > > > > Change-Id: I7a115b0c25583a74235290b23a07837610a1e210 > > Reviewed-on: https://chromium-review.googlesource.com/441046 > > Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> > > Reviewed-by: Henrik Kjellander <kjellander@chromium.org> > > > > TBR=kjellander@chromium.org,mbonadei@chromium.org,chromium-reviews@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= chromium:690916 > > Change-Id: I0f5395b51e6074d1eb8f06776dfb61289018b6b3 > Reviewed-on: https://chromium-review.googlesource.com/441810 > Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> > Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> > BUG= chromium:690916 Change-Id: I183b6a25af147b0e602aaf578555ebe127ddbb8e Reviewed-on: https://chromium-review.googlesource.com/441811 Reviewed-by: Henrik Kjellander <kjellander@chromium.org> Commit-Queue: Henrik Kjellander <kjellander@chromium.org> [modify] https://crrev.com/1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b/scripts/slave/recipes/webrtc/ios_api_framework.py [modify] https://crrev.com/1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_ok.json [modify] https://crrev.com/1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_failure.json [modify] https://crrev.com/1cf6c2c168d6872d9a5d15b19d5c78ee98ec931b/scripts/slave/recipes/webrtc/ios_api_framework.expected/trybot_build.json
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/527307a31eacff50e0daae766c6814f9fa2feebe commit 527307a31eacff50e0daae766c6814f9fa2feebe Author: Mirko Bonadei <mbonadei@chromium.org> Date: Wed Feb 15 15:40:40 2017 Fixing sneaky python indentation error We were skipping the build step which should always be executed. BUG= chromium:690916 Change-Id: I955268dd37a4cf84b3909ffc05d42bcd40afa2bf Reviewed-on: https://chromium-review.googlesource.com/443107 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> [modify] https://crrev.com/527307a31eacff50e0daae766c6814f9fa2feebe/scripts/slave/recipes/webrtc/ios_api_framework.py [modify] https://crrev.com/527307a31eacff50e0daae766c6814f9fa2feebe/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_ok.json [modify] https://crrev.com/527307a31eacff50e0daae766c6814f9fa2feebe/scripts/slave/recipes/webrtc/ios_api_framework.expected/build_failure.json [modify] https://crrev.com/527307a31eacff50e0daae766c6814f9fa2feebe/scripts/slave/recipes/webrtc/ios_api_framework.expected/trybot_build.json
The following revision refers to this bug: https://chromium.googlesource.com/external/webrtc.git/+/8714b8f1aecbf04eec90d1fc86f151072d629120 commit 8714b8f1aecbf04eec90d1fc86f151072d629120 Author: mbonadei <mbonadei@webrtc.org> Date: Wed Feb 15 21:18:57 2017 Improving parallelism when building with goma It seems that ninja defaults the number of available CPUs. BUG= chromium:690916 NOTRY=True Review-Url: https://codereview.webrtc.org/2691393003 Cr-Commit-Position: refs/heads/master@{#16635} [modify] https://crrev.com/8714b8f1aecbf04eec90d1fc86f151072d629120/tools-webrtc/ios/build_ios_libs.py
Comment 1 by kjellander@chromium.org
, Feb 10 2017