Closed jpsim closed 2 years ago
Starting the process on our side. ETA later this week.
cc @saraadams
FYI, we tried to update today but it seems to have caused problems downstream: https://engflow.slack.com/archives/C02QMNG92A3/p1663268271326349
Investigating tomorrow.
@Yannic how's the update process going? Is there anything I can do to help?
We deployed the change to the cluster but had to revert because it was causing other issues (missing python3?). We need to investigate whether Apple changed anything in Xcode (I do see a new Xcode-related download on developer.apply.com).
Do you know what's up with that?
Python 2.7 was removed in macOS 12.3: https://developer.apple.com/documentation/macos-release-notes/macos-12_3-release-notes
But as far as I can tell Python 3 is still installed:
$ sw_vers
ProductName: macOS
ProductVersion: 12.6
BuildVersion: 21G115
$ ~ /usr/bin/python3 --version
Python 3.9.6
I don't think anything from bazel relies on py2 at this point because of this, and since it's long deprecated, I'm not in the engflow slack but is it an engflow thing hitting the issue?
An example of a full error can be found at https://github.com/envoyproxy/envoy-mobile/actions/runs/3063500567/jobs/4945798180.
Copy-pasted version so that we do not lose it:
Run ./bazelw build --config=ios --config=remote-ci-macos --remote_header="Authorization=***" //examples/swift/hello_world:app
WARNING: Option 'auth_enabled' is deprecated: Use --google_default_credentials instead
WARNING: option '--google_default_credentials' was expanded to from both option '--config=remote-ci-macos' (source command line options) and option '--config=remote-ci-macos' (source command line options)
INFO: Invocation ID: 9ac70508-aa6f-4ae4-904d-326dd4f1355b
INFO: Streaming build results to: https://envoy.cluster.engflow.com/invocation/9ac70508-aa6f-4ae4-904d-326dd4f1355b
Loading:
Loading: 2 packages loaded
Analyzing: target //examples/swift/hello_world:app (4 packages loaded, 0 targets configured)
Analyzing: target //examples/swift/hello_world:app (6 packages loaded, 1 target configured)
Analyzing: target //examples/swift/hello_world:app (10 packages loaded, 11 targets configured)
Analyzing: target //examples/swift/hello_world:app (10 packages loaded, 11 targets configured)
WARNING: The major revision of the Android NDK referenced by android_ndk_repository rule 'androidndk' is 25. The major revisions supported by Bazel are [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]. Bazel will attempt to treat the NDK as if it was r21. This may cause compilation and linkage problems. Please download a supported NDK version.
Analyzing: target //examples/swift/hello_world:app (56 packages loaded, 11 targets configured)
Analyzing: target //examples/swift/hello_world:app (60 packages loaded, 11 targets configured)
Analyzing: target //examples/swift/hello_world:app (60 packages loaded, 11 targets configured)
Analyzing: target //examples/swift/hello_world:app (76 packages loaded, 403 targets configured)
Analyzing: target //examples/swift/hello_world:app (76 packages loaded, 403 targets configured)
WARNING: /Users/runner/work/envoy-mobile/envoy-mobile/library/common/jni/BUILD:90:27: target 'libndk_envoy_jni.jnilib' is both a rule and a file; please choose another name for the rule
Analyzing: target //examples/swift/hello_world:app (229 packages loaded, 5473 targets configured)
Analyzing: target //examples/swift/hello_world:app (425 packages loaded, 19518 targets configured)
Analyzing: target //examples/swift/hello_world:app (425 packages loaded, 19518 targets configured)
Analyzing: target //examples/swift/hello_world:app (425 packages loaded, 19518 targets configured)
INFO: Analyzed target //examples/swift/hello_world:app (487 packages loaded, 22127 targets configured).
INFO: Found 1 target...
[0 / 53] [Prepa] Writing file examples/swift/hello_world/app-intermediates/Info.plist-root-control
INFO: From Generating C++ proto_library @com_github_cncf_udpa//xds/type/matcher/v3:pkg:
xds/type/matcher/v3/http_inputs.proto:7:1: warning: Import validate/validate.proto is unused.
INFO: From Generating C++ proto_library //library/common/extensions/retry/options/network_configuration:predicate:
library/common/extensions/retry/options/network_configuration/predicate.proto:5:1: warning: Import validate/validate.proto is unused.
INFO: From Generating Descriptor Set proto_library //library/common/extensions/retry/options/network_configuration:predicate:
library/common/extensions/retry/options/network_configuration/predicate.proto:5:1: warning: Import validate/validate.proto is unused.
INFO: From Generating Descriptor Set proto_library @com_github_cncf_udpa//xds/type/matcher/v3:pkg:
xds/type/matcher/v3/http_inputs.proto:7:1: warning: Import validate/validate.proto is unused.
[2,228 / 3,334] Compiling src/crypto/asn1/tasn_enc.c; 21s remote ... (40 actions, 0 running)
[4,161 / 4,167] Linking examples/swift/hello_world/app_bin; 15s remote
[4,161 / 4,167] Linking examples/swift/hello_world/app_bin; 58s remote
[4,161 / 4,167] Linking examples/swift/hello_world/app_bin; 107s remote
ERROR: /Users/runner/work/envoy-mobile/envoy-mobile/examples/swift/hello_world/BUILD:13:16: Bundling app failed: (Exit 72): bundletool failed: error executing command (from target //examples/swift/hello_world:app)
(cd /private/var/tmp/_bazel_runner/b225883c33850f3f191a570e7b70ec29/execroot/envoy_mobile && \
exec env - \
bazel-out/darwin-opt-exec-B1808895-ST-13190178d52d/bin/external/build_bazel_rules_apple/tools/bundletool/bundletool bazel-out/applebin_ios-ios_x86_64-fastbuild-ST-4f04401fafb6/bin/examples/swift/hello_world/app-intermediates/bundletool_control.json)
# Configuration: 9afeecc7f66a40af53d8a21be040ddaef1f0c12dc9f82de6d94872e6d0031194
# Execution platform: //ci/platform:macos
2022-09-15 20:51:32.077 xcodebuild[32140:187526] [MT] DVTPlugInLoading: Failed to load code for plug-in com.apple.dt.IDESimulatorAvailability (/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin), error = Error Domain=NSCocoaErrorDomain Code=3588 "dlopen(/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, 0x0109): Symbol not found: _OBJC_CLASS_$_SimDiskImage
Referenced from: /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability
Expected in: /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator" UserInfo={NSLocalizedFailureReason=The bundle couldn’t be loaded., NSLocalizedRecoverySuggestion=Try reinstalling the bundle., NSFilePath=/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, NSDebugDescription=dlopen(/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, 0x0109): Symbol not found: _OBJC_CLASS_$_SimDiskImage
Referenced from: /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability
Expected in: /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator, NSBundlePath=/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin, NSLocalizedDescription=The bundle “IDESimulatorAvailability” couldn’t be loaded.}, dyldError = dlopen(/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, 0x0000): Symbol not found: _OBJC_CLASS_$_SimDiskImage
Referenced from: /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability
Expected in: /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator
2022-09-15 20:51:32.147 xcodebuild[32140:187526] [MT] DVTAssertions: ASSERTION FAILURE in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot2/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/DVTFrameworks/DVTFrameworks-21303/DVTFoundation/PlugInArchitecture/DataModel/DVTPlugIn.m:374
Details: Failed to load code for plug-in com.apple.dt.IDESimulatorAvailability (/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin)
Please ensure Xcode packages are up-to-date — try running 'xcodebuild -runFirstLaunch'.
NSBundle error: Error Domain=NSCocoaErrorDomain Code=3588 "dlopen(/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, 0x0109): Symbol not found: _OBJC_CLASS_$_SimDiskImage
Referenced from: /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability
Expected in: /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator" UserInfo={NSLocalizedFailureReason=The bundle couldn’t be loaded., NSLocalizedRecoverySuggestion=Try reinstalling the bundle., NSFilePath=/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, NSDebugDescription=dlopen(/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability, 0x0109): Symbol not found: _OBJC_CLASS_$_SimDiskImage
Referenced from: /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin/Contents/MacOS/IDESimulatorAvailability
Expected in: /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator, NSBundlePath=/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/PlugIns/IDESimulatorAvailability.ideplugin, NSLocalizedDescription=The bundle “IDESimulatorAvailability” couldn’t be loaded.}
Object: <DVTPlugIn: 0x600000540be0>
Method: -loadAssertingOnError:error:
Thread: <_NSMainThread: 0x600002110380>{number = 1, name = main}
Hints:
Backtrace:
0 0x0000000107422f81
1 0x00000001074224b5
2 0x00000001074226c1
3 0x00000001072993ba
4 0x0000000107254c73
5 0x0000000107252a1f
6 0x00007ff819b65317
7 0x00007ff819b727ee
8 0x00000001074715a1
9 0x00000001074470d8
10 0x00000001072528a3
11 0x0000000107252af5
12 0x0000000108a5cf66
13 0x0000000108a5c526
14 0x0000000108a5b919
15 0x0000000105cbf9a4
16 0x0000000105a4220a
sh: line 1: 32142 Abort trap: 6 /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find python3 2> /dev/null
python3: error: sh -c '/Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/engflow/xcode-snap-0fb572901bb30049f/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find python3 2> /dev/null' failed with exit code 34304: (null) (errno=No such file or directory)
xcode-select: Failed to locate 'python3', and no install could be requested (perhaps no UI is present). Please install manually from 'developer.apple.com'.
Target //examples/swift/hello_world:app failed to build
INFO: Elapsed time: 413.877s, Critical Path: 166.33s
INFO: 4166 processes: 3185 remote cache hit, 978 internal, 3 remote.
FAILED: Build did NOT complete successfully
FAILED: Build did NOT complete successfully
INFO: Streaming build results to: https://envoy.cluster.engflow.com/invocation/9ac70508-aa6f-4ae4-904d-326dd4f1355b
FAILED: Build did NOT complete successfully
This is now the latest stable Xcode release and we should update to it in order to compile against the latest iOS SDK.
Will require EngFlow to update their executors just as was done for #1997 and #2100. This version of Xcode also requires macOS 12.5 to run, so an OS update to the workers may also be needed.
cc @lfpino @Yannic