New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 890351 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 1
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Mac builders for BoringSSL are missing Xcode

Project Member Reported by davidben@chromium.org, Sep 28

Issue description

Seeing this on CI and try bots.
https://ci.chromium.org/p/boringssl/builders/luci.boringssl.try/ios64_compile/b8934128890223096144
https://ci.chromium.org/p/boringssl/builders/luci.boringssl.ci/mac/b8934215559584825008

This is a different failure from  issue #888687  so filing this separately. With both failing, we are entirely without macOS/iOS coverage in BoringSSL right now.
 
Labels: -Type-Bug Type-Bug-Regression
We do not provide Xcode via the system image anymore. You need to be utilizing the hermetic Xcode toolchain
Do you have instructions on how that is set up? BoringSSL is a standalone project, so we don't pick up Chromium's bits for free.

Also, was this announced anywhere? Would have been nice to have a smoother transition.
Components: -Infra>Labs
Labels: Infra-Troopers
Over to troopers for assistance.

Troopers - could someone point davidben@ to the right spot on how to include the hermetic Xcode bits?
Owner: davidben@chromium.org
Status: Assigned (was: Untriaged)
Your recipe should be updated to do something similar to the code at https://codesearch.chromium.org/chromium/build/scripts/slave/recipe_modules/chromium/api.py?rcl=89f534b2289b253beb4d742ed039a3a557eefc89&l=820
Alright, I'll take a look at that.

Where should we subscribe for these sorts of changes, so we can prepare ahead of time for the next one?
Components: Infra>Client>Chrome
Routing to ICC to answer davidben@ question. I personally don't have a good answer :(
Cc: sergeybe...@chromium.org jbudorick@chromium.org
Perhaps sergeyberezin or jbudorick@ could give some pointers on how to fix?

The best way is to install Xcode per build - similar to https://crbug.com/884015#c38 (actual CL https://crrev.com/c/1241857). 
Basically, add depot_tools/osx_sdk recipe module, and run your build / tests in its context. Also add the appropriate service accounts to https://chrome-infra-auth.appspot.com/auth/groups/ios-xcode-readers (or go/bugatrooper for assistance - non-troopers are not likely to have enough permissions).

Ooh, thanks! That looks quite straightforward!
Re ACLs, we're just using luci.flex.ci. I'm not sure what service account that corresponds to.
Project Member

Comment 12 by bugdroid1@chromium.org, Oct 1

The following revision refers to this bug:
  https://boringssl.googlesource.com/boringssl/+/cbc3e076fc0eb3d21870bbf83e0ced1a0f01a6e3

commit cbc3e076fc0eb3d21870bbf83e0ced1a0f01a6e3
Author: David Benjamin <davidben@google.com>
Date: Mon Oct 01 17:41:54 2018

Take iOS builders out of the CQ rotation too.

Bug:  chromium:890351 
Change-Id: Ia11b2b97f25d0c37e491641db6c48aa37c03de30
Reviewed-on: https://boringssl-review.googlesource.com/32224
Reviewed-by: Adam Langley <agl@google.com>

[modify] https://crrev.com/cbc3e076fc0eb3d21870bbf83e0ced1a0f01a6e3/infra/config/cq.cfg

Re #c3: unfortunately, this change was mostly confined to Chromium on Mac and iOS, and was announced on their lists only. It was only with the migration to LUCI and consolidation of machine pools we realized that so many other teams are implicitly relying on system Xcode.

It's a good idea to announce it wider now, but I'm also not sure what a good list would be. Maybe infra-dev@chromium.org?
Looking at the swarming tasks for the builds referenced in #0, the service accounts are:

boringssl-try-builder@chops-service-accounts.iam.gserviceaccount.com
boringssl-ci-builder@chops-service-accounts.iam.gserviceaccount.com

I added those to the group.
Project Member

Comment 16 by bugdroid1@chromium.org, Oct 1

Labels: merge-merged-config
The following revision refers to this bug:
  https://boringssl.googlesource.com/boringssl/+/198a703f6bd7782112ab62942a48c7c77e10a26b

commit 198a703f6bd7782112ab62942a48c7c77e10a26b
Author: David Benjamin <davidben@google.com>
Date: Mon Oct 01 22:39:53 2018

Add an osx_sdk cache to BoringSSL builders.

This will carry the hermetic toolchain for Mac builders. It was
suggested that using mixins rather than adding empty caches to each
builder was preferable, so this also makes the try builders use mixins.

This CL adds a CPU selector to luci.boringssl.ci to match
luci.boringssl.try. It's a no-op, but we may as well note that we do
indeed want an x86_64 machine.

It also aligns the macOS versions a bit. The try jobs were using a mix
of 10.9 and 10.12 because, at the time, iOS required 10.12 but 10.9 was
more plentiful. Now 10.13 is more plentiful. Using the mixin is probably
better so we can update it all at once. (There's something to be said
for running the tests on older versions, but we haven't been doing that
historically. That kind of coverage is probably more efficient to do on
the embedder side like Chromium.)

There's a similar version disparity on Windows between Win7 and Win10.
I've left those alone in this CL and added a "win7" mixin.

https://chromium-review.googlesource.com/c/chromium/tools/build/+/1255546
is the recipe-side change.

Bug:  chromium:890351 
Change-Id: I11bbddaa513ec5b48dacb2626bd7b282473d4a43
Reviewed-on: https://boringssl-review.googlesource.com/32244
Reviewed-by: David Benjamin <davidben@google.com>
Reviewed-by: Sergey Berezin <sergeyberezin@chromium.org>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>

[modify] https://crrev.com/198a703f6bd7782112ab62942a48c7c77e10a26b/cr-buildbucket.cfg

Project Member

Comment 17 by bugdroid1@chromium.org, Oct 1

Project Member

Comment 18 by bugdroid1@chromium.org, Oct 1

The following revision refers to this bug:
  https://boringssl.googlesource.com/boringssl/+/9e97c022e6459035625b842451fd8582fe022dcc

commit 9e97c022e6459035625b842451fd8582fe022dcc
Author: David Benjamin <davidben@google.com>
Date: Mon Oct 01 23:31:45 2018

Bring Mac and iOS builders back to the CQ.

The vpython issue appears to have gone away and hermetic Xcode sorted
out the other problem.

Bug:  chromium:888687 ,  chromium:890351 
Change-Id: I9da893b7f21f0bc7c03e1e70c0e3e86f9720cec1
Reviewed-on: https://boringssl-review.googlesource.com/32304
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>

[modify] https://crrev.com/9e97c022e6459035625b842451fd8582fe022dcc/infra/config/cq.cfg

Status: Fixed (was: Started)
Project Member

Comment 20 by bugdroid1@chromium.org, Oct 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6bd7dab6856e45a31b5b234b79fcb6ddfc56754f

commit 6bd7dab6856e45a31b5b234b79fcb6ddfc56754f
Author: David Benjamin <davidben@chromium.org>
Date: Tue Oct 02 21:47:18 2018

Roll src/third_party/boringssl/src 13fd62744..ce00828c8

https://boringssl.googlesource.com/boringssl/+log/13fd627449cefbae7576d4b145cb24fac303fc7d..ce00828c89df3d4c40de7d715b1a032eb03c525c

The following commits have Chromium bugs associated:
  9e97c022e Bring Mac and iOS builders back to the CQ.
  7c3ce519e Actually disable RandTest.Fork on iOS.
  52483994c Mostly fix undefined casts around STACK_OF's comparator.
  fb4e2e0f0 Fix undefined casts in sk_*_pop_free and sk_*_deep_copy.
  cbc3e076f Take iOS builders out of the CQ rotation too.
  792c1dc43 Rewrite PEM_X509_INFO_read_bio.
  419144adc Fix undefined function pointer casts in {d2i,i2d}_Foo_{bio,fp}
  217bfd3c9 Fix undefined function pointer casts in IMPLEMENT_PEM_*.

I've also updated the roll_boringssl.py script to print the above message and
the below bug list, so we don't need to manually attach things to rolls.

Bug:  785442 ,  888687 , 890115,  890351 
Change-Id: If08496fcff132e71052a89c60aefb609d28ad3c7
Reviewed-on: https://chromium-review.googlesource.com/c/1257561
Commit-Queue: Steven Valdez <svaldez@chromium.org>
Reviewed-by: Steven Valdez <svaldez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595994}
[modify] https://crrev.com/6bd7dab6856e45a31b5b234b79fcb6ddfc56754f/DEPS
[modify] https://crrev.com/6bd7dab6856e45a31b5b234b79fcb6ddfc56754f/third_party/boringssl/roll_boringssl.py

Sign in to add a comment