| # Describes the targets run in continuous integration environment. |
| # |
| # Flutter infra uses this file to generate a checklist of tasks to be performed |
| # for every commit. |
| # |
| # More information at: |
| # * https://github.com/flutter/cocoon/blob/main/CI_YAML.md |
| enabled_branches: |
| - main |
| - flutter-\d+\.\d+-candidate\.\d+ |
| - fuchsia_r\d+[a-z]* |
| |
| platform_properties: |
| linux: |
| properties: |
| # CIPD flutter/java/openjdk/$platform |
| dependencies: >- |
| [ |
| {"dependency": "open_jdk", "version": "version:17"}, |
| {"dependency": "gradle_cache", "version": "none"} |
| ] |
| device_type: none |
| os: Ubuntu |
| cores: "8" |
| mac: |
| properties: |
| # CIPD flutter/java/openjdk/$platform |
| dependencies: >- |
| [ |
| {"dependency": "open_jdk", "version": "version:17"} |
| ] |
| device_type: none |
| os: Mac-13|Mac-14 |
| $flutter/osx_sdk : >- |
| { |
| "sdk_version": "15a240d" |
| } |
| windows: |
| properties: |
| # CIPD flutter/java/openjdk/$platform |
| dependencies: >- |
| [ |
| {"dependency": "open_jdk", "version": "version:17"} |
| ] |
| device_type: none |
| os: Windows-10 |
| |
| targets: |
| - name: Linux local_engine_builds |
| enabled_branches: |
| - main |
| recipe: engine_v2/engine_v2 |
| properties: |
| config_name: local_engine |
| |
| - name: Linux linux_android_emulator_tests |
| bringup: true |
| enabled_branches: |
| - main |
| recipe: engine_v2/engine_v2 |
| properties: |
| config_name: linux_android_emulator |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| timeout: 90 |
| runIf: |
| - engine/src/flutter/.ci.yaml |
| - ci/builders/linux_android_emulator.json |
| - DEPS |
| - lib/ui/** |
| - shell/platform/android/** |
| - testing/scenario_app/** |
| - testing/skia_gold_client/** |
| |
| - name: Linux linux_android_emulator_tests_34 |
| enabled_branches: |
| - main |
| recipe: engine_v2/engine_v2 |
| properties: |
| config_name: linux_android_emulator_34 |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| timeout: 90 |
| runIf: |
| - engine/src/flutter/.ci.yaml |
| - ci/builders/linux_android_emulator.json |
| - DEPS |
| - lib/ui/** |
| - shell/platform/android/** |
| - testing/scenario_app/** |
| - testing/skia_gold_client/** |
| |
| - name: Linux linux_android_emulator_opengles_tests_34 |
| enabled_branches: |
| - main |
| recipe: engine_v2/engine_v2 |
| properties: |
| config_name: linux_android_emulator_opengles_34 |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| timeout: 90 |
| runIf: |
| - engine/src/flutter/.ci.yaml |
| - ci/builders/linux_android_emulator_opengles_34.json |
| - DEPS |
| - lib/ui/** |
| - shell/platform/android/** |
| - testing/scenario_app/** |
| - testing/skia_gold_client/** |
| |
| - name: Linux linux_android_emulator_skia_tests |
| bringup: true |
| enabled_branches: |
| - main |
| recipe: engine_v2/builder |
| properties: |
| config_name: linux_android_emulator_skia |
| kvm: "1" |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| timeout: 90 |
| runIf: |
| - engine/src/flutter/.ci.yaml |
| - ci/builders/linux_android_emulator.json |
| - DEPS |
| - lib/ui/** |
| - shell/platform/android/** |
| - testing/scenario_app/** |
| - testing/skia_gold_client/** |
| |
| - name: Linux linux_android_emulator_skia_tests_34 |
| enabled_branches: |
| - main |
| recipe: engine_v2/builder |
| properties: |
| config_name: linux_android_emulator_skia_34 |
| kvm: "1" |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| timeout: 90 |
| runIf: |
| - engine/src/flutter/.ci.yaml |
| - ci/builders/linux_android_emulator.json |
| - DEPS |
| - lib/ui/** |
| - shell/platform/android/** |
| - testing/scenario_app/** |
| - testing/skia_gold_client/** |
| |
| - name: Linux builder_cache |
| enabled_branches: |
| - main |
| recipe: engine_v2/cache |
| presubmit: false |
| properties: |
| cache_name: "builder" |
| cache_paths: >- |
| [ |
| "builder", |
| "git" |
| ] |
| gclient_variables: >- |
| { |
| "download_emsdk": "true", |
| "download_android_deps": "true", |
| "download_jdk": "true" |
| } |
| timeout: 60 |
| |
| - name: Windows builder_cache |
| enabled_branches: |
| - main |
| recipe: engine_v2/cache |
| presubmit: false |
| properties: |
| cache_name: "builder" |
| cache_paths: >- |
| [ |
| "builder", |
| "git" |
| ] |
| gclient_variables: >- |
| { |
| "download_android_deps": "true", |
| "download_jdk": "true" |
| } |
| timeout: 60 |
| |
| - name: Mac builder_cache |
| enabled_branches: |
| - main |
| recipe: engine_v2/cache |
| presubmit: false |
| properties: |
| cache_name: "builder" |
| cache_paths: >- |
| [ |
| "builder", |
| "git" |
| ] |
| ignore_cache_paths: >- |
| [ |
| "builder/src/flutter/prebuilts/SDKs", |
| "builder/src/flutter/prebuilts/Library" |
| ] |
| gclient_variables: >- |
| { |
| "download_android_deps": "true", |
| "download_jdk": "true" |
| } |
| timeout: 60 |
| |
| - name: Linux linux_benchmarks |
| enabled_branches: |
| - main |
| recipe: engine_v2/builder |
| presubmit: false |
| properties: |
| config_name: linux_benchmarks |
| timeout: 60 |
| |
| - name: Linux linux_fuchsia |
| recipe: engine_v2/engine_v2 |
| timeout: 60 |
| properties: |
| release_build: "true" |
| config_name: linux_fuchsia |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_fuchsia_tests |
| recipe: engine_v2/engine_v2 |
| timeout: 90 |
| properties: |
| config_name: linux_fuchsia_tests |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| kvm: "1" |
| |
| - name: Linux linux_clang_tidy |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| config_name: linux_clang_tidy |
| runIf: |
| - DEPS |
| - engine/src/flutter/.ci.yaml |
| - tools/clang_tidy/** |
| - ci/builders/** |
| - ci/clang_tidy.sh |
| - "**.h" |
| - "**.c" |
| - "**.cc" |
| - "**.fbs" |
| - "**.frag" |
| - "**.vert" |
| |
| - name: Linux linux_arm_host_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: linux_arm_host_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_host_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: linux_host_engine |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_host_desktop_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: linux_host_desktop_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_android_aot_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: linux_android_aot_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_android_debug_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: linux_android_debug_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Linux linux_license |
| recipe: engine_v2/builder |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| config_name: linux_license |
| clobber: "true" |
| |
| - name: Linux linux_web_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| release_build: "true" |
| config_name: linux_web_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| runIf: |
| - DEPS |
| - engine/src/flutter/.ci.yaml |
| - lib/web_ui/** |
| - web_sdk/** |
| - tools/** |
| - ci/** |
| - flutter_frontend_server/** |
| |
| - name: Linux clangd |
| recipe: engine_v2/builder |
| properties: |
| config_name: linux_unopt_debug_no_rbe |
| |
| - name: Linux linux_unopt |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| config_name: linux_unopt |
| |
| - name: Linux Web Framework tests |
| recipe: engine/web_engine_framework |
| enabled_branches: |
| - main |
| properties: |
| add_recipes_cq: "true" |
| cores: "32" |
| gclient_variables: >- |
| {"download_emsdk": true} |
| dependencies: >- |
| [ |
| {"dependency": "chrome_and_driver", "version": "version:119.0.6045.9"}, |
| {"dependency": "curl", "version": "version:7.64.0"} |
| ] |
| no_goma: "true" |
| drone_dimensions: > |
| ["device_type=none", "os=Linux"] |
| shard: web_tests |
| subshards: >- |
| ["0", "1", "2", "3", "4", "5", "6", "7_last"] |
| timeout: 60 |
| runIf: |
| - DEPS |
| - engine/src/flutter/.ci.yaml |
| - lib/web_ui/** |
| - web_sdk/** |
| - tools/** |
| - ci/** |
| - flutter_frontend_server/** |
| |
| - name: Linux mac_android_aot_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 240 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: mac_android_aot_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| dimensions: |
| # This is needed so that orchestrators that only spawn subbuilds are not |
| # assigned to the large 32 core workers when doing release builds. |
| # For more details see the issue |
| # at https://github.com/flutter/flutter/issues/152186. |
| cores: "8" |
| |
| - name: Mac mac_clang_tidy |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| config_name: mac_clang_tidy |
| runIf: |
| - DEPS |
| - engine/src/flutter/.ci.yaml |
| - tools/clang_tidy/** |
| - ci/builders/** |
| - ci/clang_tidy.sh |
| - "**.h" |
| - "**.c" |
| - "**.cc" |
| - "**.fbs" |
| - "**.frag" |
| - "**.vert" |
| - "**.m" |
| - "**.mm" |
| |
| - name: Mac mac_host_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 240 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| cpu: arm64 |
| config_name: mac_host_engine |
| dependencies: >- |
| [ |
| {"dependency": "goldctl", "version": "git_revision:720a542f6fe4f92922c3b8f0fdcc4d2ac6bb83cd"} |
| ] |
| $flutter/osx_sdk : >- |
| { |
| "sdk_version": "15a240d" |
| } |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Mac-13|Mac-14 |
| |
| # Avoid using a Mac orchestrator to save ~5 minutes of Mac host time. |
| - name: Linux mac_clangd |
| recipe: engine_v2/engine_v2 |
| timeout: 90 |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Linux |
| properties: |
| config_name: mac_unopt_debug_no_rbe |
| |
| - name: Mac mac_unopt |
| recipe: engine_v2/engine_v2 |
| properties: |
| config_name: mac_unopt |
| add_recipes_cq: "true" |
| timeout: 120 |
| |
| - name: Mac mac_ios_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 240 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: mac_ios_engine |
| $flutter/osx_sdk : >- |
| { |
| "sdk_version": "15a240d" |
| } |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Mac-13|Mac-14 |
| - cpu=x86 |
| |
| - name: Windows windows_android_aot_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: windows_android_aot_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Windows |
| |
| - name: Windows windows_host_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| properties: |
| add_recipes_cq: "true" |
| release_build: "true" |
| config_name: windows_host_engine |
| # Do not remove(https://github.com/flutter/flutter/issues/144644) |
| # Scheduler will fail to get the platform |
| drone_dimensions: |
| - os=Windows |
| |
| - name: Windows windows_arm_host_engine |
| recipe: engine_v2/engine_v2 |
| timeout: 120 |
| enabled_branches: |
| # Don't run this on release branches |
| - main |
| properties: |
| add_recipes_cq: "true" |
| config_name: windows_arm_host_engine |
| drone_dimensions: |
| - os=Windows |
| |
| - name: Windows windows_unopt |
| recipe: engine_v2/builder |
| timeout: 120 |
| properties: |
| config_name: windows_unopt |
| |
| - name: Linux ci_yaml engine roller |
| bringup: true |
| recipe: infra/ci_yaml |
| properties: |
| backfill: "false" |