@@ -2,39 +2,21 @@ gcp_credentials: ENCRYPTED[!9c8e92e8da192ce2a51b7d4ed9948c4250d0bae3660193d9b901
22
33# Run on PRs and main branch post submit only. Don't run tests when tagging.
44only_if : $CIRRUS_TAG == '' && ($CIRRUS_PR != '' || $CIRRUS_BRANCH == 'main')
5- env :
6- CHANNEL : " master" # Default to master when not explicitly set by a task.
7- PLUGIN_TOOL_COMMAND : " dart ./script/tool/bin/flutter_plugin_tools.dart"
85
96setup_template : &SETUP_TEMPLATE
107 upgrade_flutter_script :
11- # Channels that are part of our normal test matrix use a pinned,
12- # auto-rolled version to prevent out-of-band CI failures due to changes in
13- # Flutter.
14- - TARGET_TREEISH=$CHANNEL
15- - if [[ "$CHANNEL" == "master" || "$CHANNEL" == "stable" ]]; then
16- - TARGET_TREEISH=$(< .ci/flutter_$CHANNEL.version)
17- - fi
18- # Ensure that the repository has all the branches.
8+ - PINNED_VERSION=$(< .ci/flutter_master.version)
9+ # Ensure that the repository has everything.
1910 - cd $FLUTTER_HOME
2011 - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
2112 - git fetch origin
22- # Switch to the requested channel .
13+ # Switch to the pinned master version .
2314 - git checkout $TARGET_TREEISH
24- # When using a branch rather than a hash or version tag, reset to the
25- # upstream branch rather than using pull, since the base image can sometimes
26- # be in a state where it has diverged from upstream (!).
27- - if [[ "$TARGET_TREEISH" == "$CHANNEL" ]] && [[ "$CHANNEL" != *"."* ]]; then
28- - git reset --hard @{u}
29- - fi
3015 # Run doctor to allow auditing of what version of Flutter the run is using.
3116 - flutter doctor -v
3217 tool_setup_script :
3318 - .ci/scripts/prepare_tool.sh
3419
35- # Light-workload Linux tasks.
36- # These use default machines, with fewer CPUs, to reduce pressure on the
37- # concurrency limits.
3820task :
3921 << : *SETUP_TEMPLATE
4022 gke_container :
5032 only_if : $CIRRUS_PR != ''
5133 version_script :
5234 - ./script/tool_runner.sh version-check --check-for-missing-changes --pr-labels="$CIRRUS_PR_LABELS"
53-
54- # Heavy-workload Linux tasks.
55- # These use machines with more CPUs and memory, so will reduce parallelization
56- # for non-credit runs.
57- task :
58- << : *SETUP_TEMPLATE
59- gke_container :
60- dockerfile : .ci/Dockerfile
61- builder_image_name : docker-builder-linux # gce vm image
62- builder_image_project : flutter-cirrus
63- cluster_name : test-cluster
64- zone : us-central1-a
65- namespace : default
66- cpu : 4
67- memory : 16G
68- matrix :
69- # ## Android tasks ###
70- - name : android-platform_tests
71- # Don't run full platform tests on both channels in pre-submit.
72- skip : $CIRRUS_PR != '' && $CHANNEL == 'stable'
73- env :
74- matrix :
75- PACKAGE_SHARDING : " --shardIndex 0 --shardCount 6"
76- PACKAGE_SHARDING : " --shardIndex 1 --shardCount 6"
77- PACKAGE_SHARDING : " --shardIndex 2 --shardCount 6"
78- PACKAGE_SHARDING : " --shardIndex 3 --shardCount 6"
79- PACKAGE_SHARDING : " --shardIndex 4 --shardCount 6"
80- PACKAGE_SHARDING : " --shardIndex 5 --shardCount 6"
81- matrix :
82- CHANNEL : " master"
83- CHANNEL : " stable"
84- GCLOUD_KEY_PATH : $HOME/gcloud-service-key.json
85- MAPS_API_KEY : ENCRYPTED[d6583b08f79f91ea4844c77460f04539965e46ad2fd97fb7c062b4dfe88016228b86ebe8c220ab4187e0c4bd773dc1e7]
86- GCLOUD_FIREBASE_TESTLAB_KEY : ENCRYPTED[1a2eebf9367197bbe812d9a0ea83a53a05aeba4bb5e4964fe6a69727883cd87e51238d39237b1f80b0894c48419ac268]
87- firebase_test_lab_script :
88- - if [[ -n "$GCLOUD_FIREBASE_TESTLAB_KEY" ]]; then
89- - echo $GCLOUD_FIREBASE_TESTLAB_KEY > "${GCLOUD_KEY_PATH}"
90- - ./script/tool_runner.sh firebase-test-lab --device model=redfin,version=30 --exclude=script/configs/exclude_integration_android.yaml --project=flutter-cirrus --results-bucket=flutter_cirrus_testlab --service-key="${GCLOUD_KEY_PATH}"
91- - else
92- - echo "This user does not have permission to run Firebase Test Lab tests."
93- - fi
0 commit comments