blob: c8728c1e69b999766bf35f11a9a830eb9359c3e1 [file] [log] [blame]
Fedor Korotkov73334592018-05-01 18:11:21 -04001container:
Greg Spencer77645df2018-08-06 17:33:31 -07002 image: gcr.io/flutter-cirrus/build-flutter-image:latest
Fedor Korotkov73334592018-05-01 18:11:21 -04003
4task:
Greg Spencerada1d292018-11-14 12:47:39 -08005 use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' && $CIRRUS_PR == ''
Fedor Korotkov73334592018-05-01 18:11:21 -04006 env:
Greg Spencer77645df2018-08-06 17:33:31 -07007 # Name the SDK directory to include a space so that we constantly
8 # test path names with spaces in them.
Fedor Korotkov73334592018-05-01 18:11:21 -04009 CIRRUS_WORKING_DIR: "/tmp/flutter sdk"
10 PATH: "$CIRRUS_WORKING_DIR/bin:$CIRRUS_WORKING_DIR/bin/cache/dart-sdk/bin:$PATH"
Greg Spencer77645df2018-08-06 17:33:31 -070011 ANDROID_HOME: "/opt/android_sdk"
12 git_fetch_script:
13 - git fetch origin
14 - git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
Danny Tuppeny07e93b32018-08-02 20:45:07 +010015 pub_cache:
16 folder: $HOME/.pub-cache
17 fingerprint_script: echo $OS; grep -r --include=pubspec.yaml 'PUBSPEC CHECKSUM' "$CIRRUS_WORKING_DIR"
18 flutter_pkg_cache:
19 folder: bin/cache/pkg
20 fingerprint_script: echo $OS; cat bin/internal/engine.version
21 artifacts_cache:
22 folder: bin/cache/artifacts
23 fingerprint_script: echo $OS; cat bin/internal/engine.version
Greg Spencer77645df2018-08-06 17:33:31 -070024 setup_script: ./dev/bots/cirrus_setup.sh
Fedor Korotkov73334592018-05-01 18:11:21 -040025 matrix:
26 - name: docs
Fedor Korotkovd0125d92018-05-03 14:24:02 -040027 env:
28 SHARD: docs
Greg Spencer77645df2018-08-06 17:33:31 -070029 # For uploading master docs to Firebase master branch staging site
30 FIREBASE_MASTER_TOKEN: ENCRYPTED[37e8b82f167864cae9a3f4d2cf3f37dea331d9375c295327c45de524f6c588fa6f6d63e5784f10f6d43ce29689f36c92]
31 # For uploading beta docs to Firebase public live site
32 FIREBASE_PUBLIC_TOKEN: ENCRYPTED[c422da192f06da7b4449ca8e7aa866dabeb8a0f8d7488497c2e7e447e6fd31d917e6c813db081dc4e2a7a63afdf41864]
Fedor Korotkov73334592018-05-01 18:11:21 -040033 docs_script: ./dev/bots/docs.sh
Greg Spencer77645df2018-08-06 17:33:31 -070034 - name: deploy_gallery
35 only_if: $CIRRUS_BRANCH == 'dev'
36 depends_on:
37 - docs
38 - analyze
39 - tests-linux
40 - tool_tests-linux
41 env:
42 SHARD: deploy_gallery
43 GOOGLE_DEVELOPER_SERVICE_ACCOUNT_ACTOR_FASTLANE: ENCRYPTED[d9ac1462c3c556fc2f8165c9d5566a16497d8ebc38a50357f7f3abf136b7f83e1d1d76dde36fee356cb0f9ebf7a89346]
44 ANDROID_GALLERY_UPLOAD_KEY: ENCRYPTED[0b3e681b4507aec433ef29c79b715f15f8c75ecd25315ea286b0b2bcb8b28d578634eead5aa2c54086a25e8da1bb219a]
45 test_script: ./dev/bots/deploy_gallery.sh
Fedor Korotkov73334592018-05-01 18:11:21 -040046 - name: analyze
Greg Spencer1a414992018-07-25 15:19:57 -070047 test_script:
Alexander Aprelev391e91c2018-08-30 07:30:25 -070048 - dart ./dev/bots/analyze.dart
Fedor Korotkovd0125d92018-05-03 14:24:02 -040049 - name: tests-linux
50 env:
51 SHARD: tests
Greg Spencer1a414992018-07-25 15:19:57 -070052 test_script:
53 - dart ./dev/bots/test.dart
Fedor Korotkov73334592018-05-01 18:11:21 -040054 container:
55 cpu: 4
56 memory: 8G
Greg Spencer90a5f462018-07-20 10:21:34 -070057 - name: tool_tests-linux
58 env:
59 SHARD: tool_tests
Greg Spencer1a414992018-07-25 15:19:57 -070060 test_script:
61 - dart ./dev/bots/test.dart
Greg Spencer90a5f462018-07-20 10:21:34 -070062 container:
63 cpu: 4
64 memory: 8G
Yegor8d643012018-10-08 12:38:46 -070065 - name: aot_build_tests-linux
66 env:
67 SHARD: aot_build_tests
68 test_script:
69 - dart ./dev/bots/test.dart
70 container:
71 cpu: 4
72 memory: 8G
TL Leee2167b92018-09-06 17:16:22 -040073 - name: codelabs-build-test
74 env:
75 SHARD: codelabs-build-test
76 build_test_script: ./dev/bots/codelabs_build_test.sh
77
Fedor Korotkov73334592018-05-01 18:11:21 -040078
Fedor Korotkovd0125d92018-05-03 14:24:02 -040079task:
Greg Spencerada1d292018-11-14 12:47:39 -080080 use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' && $CIRRUS_PR == ''
Fedor Korotkov73334592018-05-01 18:11:21 -040081 windows_container:
Fedor Korotkov67b5ed42018-06-06 11:43:13 -040082 image: cirrusci/windowsservercore:2016
83 os_version: 2016
84 cpu: 4
Fedor Korotkov73334592018-05-01 18:11:21 -040085 env:
86 CIRRUS_WORKING_DIR: "C:\\Windows\\Temp\\flutter sdk"
Greg Spencer77645df2018-08-06 17:33:31 -070087 git_fetch_script:
88 - git fetch origin
89 - git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
Danny Tuppeny07e93b32018-08-02 20:45:07 +010090 pub_cache:
91 folder: $APPDATA\Pub\Cache
92 fingerprint_script:
93 - ps: $Env:OS; Get-ChildItem -Path "$Env:CIRRUS_WORKING_DIR" pubspec.yaml -Recurse | Select-String -Pattern "PUBSPEC CHECKSUM" -SimpleMatch
94 flutter_pkg_cache:
95 folder: bin\cache\pkg
96 fingerprint_script: echo %OS% & type bin\internal\engine.version
97 artifacts_cache:
98 folder: bin\cache\artifacts
99 fingerprint_script: echo %OS% & type bin\internal\engine.version
Fedor Korotkov73334592018-05-01 18:11:21 -0400100 setup_script:
101 - bin\flutter.bat config --no-analytics
102 - bin\flutter.bat update-packages
Greg Spencer9f390392018-07-19 23:05:37 -0700103 - git fetch origin master
Greg Spencer1a414992018-07-25 15:19:57 -0700104 test_all_script:
105 - bin\cache\dart-sdk\bin\dart.exe -c dev\bots\test.dart
Danny Tuppenyc3248b72018-08-01 17:34:36 +0100106 matrix:
107 - name: tests-windows
108 env:
109 SHARD: tests
110 - name: tool_tests-windows
111 env:
112 SHARD: tool_tests
Greg Spencer2af2a082018-07-18 15:33:38 -0700113
114task:
Greg Spencerada1d292018-11-14 12:47:39 -0800115 use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' && $CIRRUS_PR == ''
Greg Spencer77645df2018-08-06 17:33:31 -0700116 name: deploy_gallery-macos
117 only_if: $CIRRUS_BRANCH == 'dev'
118 pub_cache:
119 folder: ~/.pub-cache
Fedor Korotkov8380e202018-08-02 12:58:23 -0400120 depends_on:
121 - analyze
Greg Spencer77645df2018-08-06 17:33:31 -0700122 - tests-macos
123 - tool_tests-macos
124 env:
125 # Name the SDK directory to include a space so that we constantly
126 # test path names with spaces in them.
127 CIRRUS_WORKING_DIR: "/tmp/flutter sdk"
128 SHARD: deploy_gallery
129 # Apple Certificates Match Passphrase
130 MATCH_PASSWORD: ENCRYPTED[db07f252234397090e3ec59152d9ec1831f5ecd0ef97d247b1dca757bbb9ef9b7c832a39bce2caf1949ccdf097e59a73]
Greg Spencer3dbcfc72018-10-04 15:59:25 -0700131 # Apple Fastlane password, ASP, and Session information.
Greg Spencer77645df2018-08-06 17:33:31 -0700132 FASTLANE_PASSWORD: ENCRYPTED[0bf9bb0cc2cb32a0ed18470cf2c9df0f587cce5f8b04adbd6cff15ca5bde7a74f721ee580227b132ab6b032f08e52ae0]
Greg Spencer3dbcfc72018-10-04 15:59:25 -0700133 FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: ENCRYPTED[b219cc13c757f36cb62bfca5102d6115f1cc283aeb974f20c657bc4991c0cc144e30cf5d8183e41cc1df1668b4d14210]
134 FASTLANE_SESSION: ENCRYPTED[88246e355e55cd5e361a575f5d5b762f5826cb9d5285cb93a263b1cad04ec09bdedb1cbd74df5ec02d6043360fa04acd]
Greg Spencer77645df2018-08-06 17:33:31 -0700135 # Private repo for publishing certificates.
136 PUBLISHING_MATCH_CERTIFICATE_REPO: git@github.com:flutter/private_publishing_certificates.git
Greg Spencer2af2a082018-07-18 15:33:38 -0700137 osx_instance:
138 image: high-sierra-xcode-9.4.1
Greg Spencer77645df2018-08-06 17:33:31 -0700139 git_fetch_script:
Greg Spencer68e03002018-08-08 09:54:56 -0700140 - git fetch origin
141 - git fetch origin master # To set FETCH_HEAD
Greg Spencer77645df2018-08-06 17:33:31 -0700142 setup_script:
143 - bin/flutter config --no-analytics
144 - bin/flutter update-packages
145 test_all_script:
146 - ./dev/bots/deploy_gallery.sh
147
148task:
Greg Spencerada1d292018-11-14 12:47:39 -0800149 use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' && $CIRRUS_PR == ''
Greg Spencer77645df2018-08-06 17:33:31 -0700150 osx_instance:
151 image: high-sierra-xcode-9.4.1
152 depends_on:
153 - analyze
Danny Tuppeny766982a2018-08-01 21:32:06 +0100154 env:
155 CIRRUS_WORKING_DIR: "/tmp/flutter sdk"
Greg Spencer77645df2018-08-06 17:33:31 -0700156 git_fetch_script:
157 - git fetch origin
158 - git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
Danny Tuppeny07e93b32018-08-02 20:45:07 +0100159 pub_cache:
160 folder: $HOME/.pub-cache
161 fingerprint_script: echo $OS; grep -r --include=pubspec.yaml 'PUBSPEC CHECKSUM' "$CIRRUS_WORKING_DIR"
162 flutter_pkg_cache:
163 folder: bin/cache/pkg
164 fingerprint_script: echo $OS; cat bin/internal/engine.version
165 artifacts_cache:
166 folder: bin/cache/artifacts
167 fingerprint_script: echo $OS; cat bin/internal/engine.version
Greg Spencer2af2a082018-07-18 15:33:38 -0700168 setup_script:
169 - bin/flutter config --no-analytics
170 - bin/flutter update-packages
Greg Spencer9f390392018-07-19 23:05:37 -0700171 test_all_script: |
172 ulimit -S -n 2048 # https://github.com/flutter/flutter/issues/2976
Greg Spencer9f390392018-07-19 23:05:37 -0700173 bin/cache/dart-sdk/bin/dart -c dev/bots/test.dart
Danny Tuppenyc3248b72018-08-01 17:34:36 +0100174 matrix:
175 - name: tests-macos
176 env:
177 SHARD: tests
178 - name: tool_tests-macos
179 env:
180 SHARD: tool_tests
Greg Spencer77645df2018-08-06 17:33:31 -0700181
182
183docker_builder:
184 # Only build a new docker image when we tag a release (for dev, beta, or release.)
185 only_if: $CIRRUS_TAG != ''
186 env:
187 GCLOUD_CREDENTIALS: ENCRYPTED[f7c098d4dd7f5ee1bfee0bb7e944cce72efbe10e97ad6440ae72de4de6a1c24d23f421a2619c668e94377fb64b0bb3e6]
188 depends_on:
189 - docs
190 - analyze
191 - tests-linux
192 - tool_tests-linux
193 build_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_build.sh"
194 login_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_login.sh"
195 push_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_push.sh"
196