[go: nahoru, domu]

Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

[ci] Part 1 of swapping iOS platform test arch #7064

Merged
merged 4 commits into from
Jan 31, 2023

Conversation

stuartmorgan
Copy link
Contributor
@stuartmorgan stuartmorgan commented Jan 30, 2023

Adds Intel versions of iOS build-all and ARM versions of iOS platform tests, as part one of swapping them. Once the new tasks propagate, they will be brought out of bringup mode and the old versions removed.

These were on the opposite architectures because of issues with running the platform tests on Cirrus ARM VMs, and then were ported as-is from Cirrus to LUCI, but now that macOS ARM works on LUCI we can switch to the desired configuration.

Also increases sharding from 4 to 5 since the tests have gotten longer over time due to increased testing and more federation, and changes the naming scheme to be more future-proof.

@stuartmorgan stuartmorgan marked this pull request as draft January 30, 2023 20:21
Adds Intel versions of iOS build-all and ARM versions of iOS platform
tests, as part one of swapping them. Once the new tasks propagate, they
will be brought out of bringup mode and the old versions removed.

These were on the opposite architectures because of issues with running
the platfor tests on Cirrus ARM VMs, and then were ported as-is from
Cirrus to LUCI, but now that macOS ARM works on LUCI we can switch to
the desired configuration.
@stuartmorgan
Copy link
Contributor Author

@jmagman I tested this by hijacking the four macOS ARM tasks that are now in this repository.

  • Three of them passed.
  • The fourth was unfortunately using a config with a 30-minute timeout (changing that doesn't seem to take effect right away) and I forgot that shard takes more than 30 minutes, so int timed out. But it was running fine right up until the 30 minute mark, and had passed a number of drive tests already. Given that I'm reasonably confident that this will work when enabled.

(I think I said in an earlier conversation that I had tried this and it didn't work, but realized I'd confused this with the Pigeon tests I'm having issues with hanging in CI; I'd never tried the plugin drive tests in ARM LUCI.)

@stuartmorgan stuartmorgan marked this pull request as ready for review January 30, 2023 21:19
Copy link
Member
@jmagman jmagman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we shard ios_platform_tests out further to take less than 30 minutes?

LGTM

@stuartmorgan stuartmorgan changed the title WIP - Testing iOS platform tests on ARM [ci] Part 1 of swapping iOS platform test arch Jan 31, 2023
@stuartmorgan
Copy link
Contributor Author

That's a good point, they have gotten longer since the last sharding. I'll update this to make the ARM version use 5 shards, and we'll see how that is.

(There's also some potential for making the shards smarter to distribute load better, but it's never been clear if there's a way to do that that isn't really fragile to minor changes.)

.ci.yaml Outdated
@@ -168,6 +188,56 @@ targets:
target_file: ios_platform_tests.yaml
package_sharding: "--shardIndex 3 --shardCount 4"

- name: Mac_arm64 ios_platform_tests_1_of_5 master
Copy link
Member
@jmagman jmagman Jan 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now that you've felt the pain of bringup, you may be better off leaving off the number of shards so adding a shard doesn't require a rename of all of them, like:

Suggested change
- name: Mac_arm64 ios_platform_tests_1_of_5 master
- name: Mac_arm64 ios_platform_tests_1 master

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point. Keyong and I talked about the naming, but I don't think we talked about that specifically; I think including the number of shards was just a translation from the Cirrus behavior of the matrix variables being in the display name.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed from x_of_N to shard_x. I also added - plugins while I'm renaming everything so the flutter/packages version can have no suffix to reduce work after the merge (currently they all have - packages to avoid name collisions in the central LUCI system).

@stuartmorgan stuartmorgan added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 31, 2023
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jan 31, 2023
@auto-submit
Copy link
auto-submit bot commented Jan 31, 2023

auto label is removed for flutter/plugins, pr: 7064, due to - The status or check suite legacy_version_analyze CHANNEL:3.3.10 DART_VERSION:2.18.6 has failed. Please fix the issues identified (or deflake) before re-applying this label.

stuartmorgan added a commit to flutter/packages that referenced this pull request Jan 31, 2023
The sharding setup here is intended to match flutter/plugin to prepare
for merging, and it's being changed (along with the names) in
flutter/plugins#7064
@stuartmorgan stuartmorgan added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 31, 2023
@auto-submit auto-submit bot merged commit 2edf563 into flutter:main Jan 31, 2023
@stuartmorgan stuartmorgan deleted the luci-arm-ios-platform-tests branch January 31, 2023 02:47
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jan 31, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jan 31, 2023
* 90f447313 [ci] Increase timeouts for platform_tests (flutter/plugins#7036)

* f5568e4b1 [google_sign_in] Add doc for iOS auth with SERVER_CLIENT_ID (flutter/plugins#4747)

* 0c05e8d91 Roll Flutter from a815ee6 to 75680ae (58 revisions) (flutter/plugins#7048)

* a4c320902 [camera]: Bump camerax_version from 1.3.0-alpha02 to 1.3.0-alpha03 in /packages/camera/camera_android_camerax/android (flutter/plugins#7061)

* 8f12b27b6 [ci] Add LUCI versions of macOS ARM tests (flutter/plugins#6984)

* 3843b38e2 [tool] Improve main-branch detection (flutter/plugins#7038)

* d39e7569c [in_app_purchase] Prep for more const widgets (flutter/plugins#7030)

* ddb9777ee [ci] Switch remaining macOS host tests to LUCI (flutter/plugins#7063)

* 2edf56324 [ci] Part 1 of swapping iOS platform test arch (flutter/plugins#7064)

* 35f0b1a49 [camerax] Add system services to plugin (flutter/plugins#6986)

* 5dd0f41a2 [webview]: Bump mockito-inline (flutter/plugins#7056)

* 1896f10ca [webview_flutter_wkwebview][webview_flutter_android] Fixes bug where the `WebView`s could not be released (flutter/plugins#6996)

* a494825fa [camerax] Allow instance manager to create identical objects (flutter/plugins#7034)

* 6ef73da26 [ci] Increase heavy workload memory (flutter/plugins#7065)

* 9da327ca3 [various] Update to use sharedDarwinSource (flutter/plugins#7027)
Maatteogekko pushed a commit to Maatteogekko/packages that referenced this pull request Feb 4, 2023
The sharding setup here is intended to match flutter/plugin to prepare
for merging, and it's being changed (along with the names) in
flutter/plugins#7064
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
autosubmit Merge PR when tree becomes green via auto submit App
Projects
None yet
2 participants