[ci] Update to Xcode 13 everywhere (#1103)
In the previous update PR I missed that there were two places that the macOS image was specified. This fixes that by combining them into a single task entry, and also extracts the macOS tempate, making the structure match flutter/plugins so that updating is consistent across repositories.
diff --git a/.cirrus.yml b/.cirrus.yml
index ce62ba0..f67d967 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -7,6 +7,13 @@
tool_setup_script:
- .ci/scripts/prepare_tool.sh
+macos_template: &MACOS_TEMPLATE
+ # Only one macOS task can run in parallel without credits, so use them for
+ # PRs on macOS.
+ use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true'
+ osx_instance:
+ image: big-sur-xcode-13
+
flutter_upgrade_template: &FLUTTER_UPGRADE_TEMPLATE
upgrade_flutter_script:
# Master uses a pinned, auto-rolled version to prevent out-of-band CI
@@ -129,38 +136,31 @@
- dart testing/web_benchmarks_test.dart
task:
- name: ios-build+platform-test
- use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true'
- osx_instance:
- image: big-sur-xcode-12.4
- env:
- PATH: $PATH:/usr/local/bin
- matrix:
- CHANNEL: "master"
- CHANNEL: "stable"
+ << : *MACOS_TEMPLATE
<< : *FLUTTER_UPGRADE_TEMPLATE
- build_script:
- # Exclude rfw until the next Flutter stable release because it depends
- # on features that have never shipped to stable. (The rfw package has
- # never worked on stable so this is not going to break anyone.)
- # When updating this, also look at the android tests above.
- # When updating this, also update the `rfw/run_tests.sh` file.
- - if [[ "$CHANNEL" == "master" ]]; then
- - ./script/tool_runner.sh build-examples --ios
- - else
- - ./script/tool_runner.sh build-examples --ios --exclude=rfw
- - fi
-
-task:
- name: local_tests
- use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true'
- osx_instance:
- image: big-sur-xcode-13
- env:
- PATH: $PATH:/usr/local/bin
- matrix:
- CHANNEL: "master"
- CHANNEL: "stable"
- << : *FLUTTER_UPGRADE_TEMPLATE
- local_tests_script:
- - ./script/local_tests.sh
+ matrix:
+ - name: ios-build+platform-test
+ env:
+ PATH: $PATH:/usr/local/bin
+ matrix:
+ CHANNEL: "master"
+ CHANNEL: "stable"
+ build_script:
+ # Exclude rfw until the next Flutter stable release because it depends
+ # on features that have never shipped to stable. (The rfw package has
+ # never worked on stable so this is not going to break anyone.)
+ # When updating this, also look at the android tests above.
+ # When updating this, also update the `rfw/run_tests.sh` file.
+ - if [[ "$CHANNEL" == "master" ]]; then
+ - ./script/tool_runner.sh build-examples --ios
+ - else
+ - ./script/tool_runner.sh build-examples --ios --exclude=rfw
+ - fi
+ - name: local_tests
+ env:
+ PATH: $PATH:/usr/local/bin
+ matrix:
+ CHANNEL: "master"
+ CHANNEL: "stable"
+ local_tests_script:
+ - ./script/local_tests.sh