Repository navigation
Mac_staging plugin_test_ios keeps failing in staging #88794
Copy link
Copy link
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listpackageflutter/packages repository. See also p: labels.flutter/packages repository. See also p: labels.platform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyteam-infraOwned by Infrastructure teamOwned by Infrastructure team
Description
Mac_staging plugin_test_ios was recently enabled in staging, but keeps failing with the following log.
Related: #86802
Example build: https://ci.chromium.org/ui/p/flutter/builders/staging/Mac_staging%20plugin_test_ios/58/overview
Seems we need a higher version of xcode:
[plugin_test_ios] [STDOUT] stderr: [ +20 ms] Found "Xcode 12.0, Build version 12A7209". Xcode 12.0.1 or greater is required to develop for iOS.
[plugin_test_ios] [STDOUT] stdout: [ +3 ms] "flutter ios" took 5,064ms.
[plugin_test_ios] [STDOUT] stderr: [ +3 ms] Encountered error while building for device.
[plugin_test_ios] [STDOUT] stderr: [ ]
[plugin_test_ios] [STDOUT] stderr: #0 throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
[plugin_test_ios] [STDOUT] stderr: #1 _BuildIOSSubCommand.runCommand (package:flutter_tools/src/commands/build_ios.dart:277:7)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #2 FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1125:27)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #3 AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #4 CommandRunner.runCommand (package:args/command_runner.dart:209:13)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #5 FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:288:9)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #6 AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #7 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #8 run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #9 AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
[plugin_test_ios] [STDOUT] stderr: #10 main (package:flutter_tools/executable.dart:92:3)
[plugin_test_ios] [STDOUT] stderr: <asynchronous suspension>
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listpackageflutter/packages repository. See also p: labels.flutter/packages repository. See also p: labels.platform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyteam-infraOwned by Infrastructure teamOwned by Infrastructure team
Activity
keyonghan commentedon Aug 24, 2021
which xcode version shall we use here? /cc @jmagman @stuartmorgan
jmagman commentedon Aug 24, 2021
@keyonghan
12c* https://github.com/flutter/infra/pull/358
The engine needs a different version than the other builders. Maybe we need an extra tag on the Xcode cipd package to make that clearer?
keyonghan commentedon Aug 24, 2021
Thanks. Yeah, seems now we use only specific version numbers. It would be helpful at least we put notes somewhere (not sure if we already have that info somewhere though).
I will submit a cl to include the 12c version.
keyonghan commentedon Aug 24, 2021
Does this test need a device?
https://ci.chromium.org/ui/p/flutter/builders/staging/Mac_staging%20plugin_test_ios/65/overview
jmagman commentedon Aug 25, 2021
I guess this was only ever run in the devicelab which has the provisioning profiles set up. That test is missing a
--no-codesign. I'll put that out for review (sorry about that!)jmagman commentedon Aug 25, 2021
It got further...
https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8837907446638483457/+/u/run_plugin_test_ios/test_stdout
jmagman commentedon Aug 27, 2021
I'm able to reproduce this. It's only on the macOS part of the test.
flutter/dev/devicelab/bin/tasks/plugin_test_ios.dart
Line 12 in 0c81077
It only happens when the app is built right before
flutter testis run. If I comment out theapp.build(buildTarget)lines the tests pass.flutter/dev/devicelab/lib/tasks/plugin_tests.dart
Lines 53 to 56 in 413f88f
If I
flutter cleanafter the build and thenflutter testit also passes.jmagman commentedon Aug 27, 2021
When it works the
PACKAGE_CONFIGis.packages. When it fails, thePACKAGE_CONFIGis/absolute/path/to/plugintestapp/.dart_tool/package_config.json.[-]Mac_staging plugin_test_ios keeps failing in staging[/-][+]Mac_staging plugin_test_ios keeps failing in staging building and testing a new macOS app[/+]stuartmorgan-g commentedon Sep 9, 2021
Does the app include path_provider by any chance? This sounds suspiciously like #87991 (comment)
jmagman commentedon Sep 9, 2021
Wow, yes it does!
flutter/dev/devicelab/lib/tasks/plugin_tests.dart
Line 52 in 413f88f
15 remaining items
[-]Mac_staging plugin_test_ios keeps failing in staging building and testing a new macOS app[/-][+]Mac_staging plugin_test_ios keeps failing in staging[/+]Update minimum iOS version in plugin_test
keyonghan commentedon Oct 1, 2021
FWIW: checked commits prior to the above fix, this error seems have been there consistently for a while.
jmagman commentedon Oct 5, 2021
Another one: #91324
jmagman commentedon Oct 7, 2021
It went green! https://ci.chromium.org/p/flutter/builders/staging/Mac_staging%20plugin_test_ios/451
@keyonghan How can we move this into prod?
keyonghan commentedon Oct 11, 2021
I will wait for 50 runs to make sure no flake happens before moving it to prod. Assigning to myself to monitor this and move later.
keyonghan commentedon Oct 12, 2021
Test has passed 50 consecutive runs.
Bring this up in prod as
bringup: truefirst to make sure no failure breaking the tree: #91713This later can be promoted as non-flaky automatically, or we can push manually whenever we see a successful run as we have validated the flakiness in staging.
keyonghan commentedon Oct 15, 2021
This test has been enabled in prod. Closing.
Fix Dart plugin registrant interaction with 'flutter test' (flutter#9…
github-actions commentedon Oct 29, 2021
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.