# 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

platform_properties:
  linux:
    properties:
      os: Ubuntu
      cores: "8"
      device_type: none
      dependencies: >-
        [
          {"dependency": "curl", "version": "version:7.64.0"}
        ]
  # The current android emulator config names can be found here:
  # https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/android/avd/proto
  # You may use those names for the android_virtual_device version.
  linux_android:
    properties:
      os: Ubuntu
      cores: "8"
      device_type: none
      dependencies: >-
        [
          {"dependency": "android_sdk", "version": "version:33v6"},
          {"dependency": "open_jdk", "version": "version:17"},
          {"dependency": "curl", "version": "version:7.64.0"},
          {"dependency": "avd_cipd_version", "version": "build_id:8739520057779466577"}
        ]
  linux_android_legacy:
    properties:
      os: Ubuntu
      cores: "8"
      device_type: none
      dependencies: >-
        [
          {"dependency": "android_sdk", "version": "version:33v6"},
          {"dependency": "open_jdk", "version": "version:17"},
          {"dependency": "curl", "version": "version:7.64.0"},
          {"dependency": "android_virtual_device", "version": "generic_android22.textpb"},
          {"dependency": "avd_cipd_version", "version": "build_id:8739520057779466577"}
        ]
  linux_desktop:
    properties:
      os: Ubuntu
      cores: "8"
      device_type: none
      dependencies: >-
        [
          {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"},
          {"dependency": "cmake", "version": "build_id:8787856497187628321"},
          {"dependency": "ninja", "version": "version:1.9.0"},
          {"dependency": "curl", "version": "version:7.64.0"}
        ]
  linux_web:
    properties:
      os: Ubuntu
      cores: "8"
      device_type: none
      dependencies: >-
        [
          {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"}
        ]
  windows_arm64:
    properties:
      dependencies: >
        [
          {"dependency": "certs", "version": "version:9563bb"}
        ]
      os: Windows
      cpu: arm64
  windows_x64:
    properties:
      dependencies: >
        [
          {"dependency": "certs", "version": "version:9563bb"}
        ]
      device_type: none
      os: Windows
      cpu: x86
  mac_arm64:
    properties:
      dependencies: >-
        [
          {"dependency": "ruby", "version": "ruby_3.1-pod_1.13"}
        ]
      os: Mac-13|Mac-14
      device_type: none
      cpu: arm64
      $flutter/osx_sdk : >-
        {
          "sdk_version": "15a240d"
        }
  mac_x64:
    properties:
      dependencies: >-
        [
          {"dependency": "ruby", "version": "ruby_3.1-pod_1.13"}
        ]
      os: Mac-13|Mac-14
      device_type: none
      cpu: x86
      $flutter/osx_sdk : >-
        {
          "sdk_version": "15a240d"
        }

targets:
  - name: Linux repo_checks
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: repo_checks.yaml
      channel: master
      version_file: flutter_master.version
      # The format check requires clang-format, and the current version of ktfmt requires JDK 11+.
      dependencies: >-
        [
          {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"},
          {"dependency": "open_jdk", "version": "version:17"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux dart_unit_test_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      add_recipes_cq: "true"
      target_file: dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Linux dart_unit_test_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Linux dart_unit_test_shard_1 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: dart_unit_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Linux dart_unit_test_shard_2 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: dart_unit_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Linux_web web_dart_unit_test_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      add_recipes_cq: "true"
      target_file: web_dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Linux_web web_dart_unit_test_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Linux_web web_dart_unit_test_shard_1 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_dart_unit_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Linux_web web_dart_unit_test_shard_2 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_dart_unit_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Linux analyze master
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: analyze.yaml
      channel: master
      version_file: flutter_master.version
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux analyze stable
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: analyze.yaml
      channel: stable
      version_file: flutter_stable.version
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  # This is only run on stable since it's extremely likely that stable will
  # resolve to packages that are older (or at least as old) than on master, so
  # running a second copy with master is very unlikely to catch anything that
  # this doesn't.
  - name: Linux analyze_downgraded stable
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: analyze_downgraded.yaml
      channel: stable
      version_file: flutter_stable.version
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  # Analyze with the previous stable (N-1) and the stable before that (N-2). The
  # versions in `channel` should be updated after a new major stable release.
  - name: Linux analyze_legacy N-1
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: analyze_legacy.yaml
      channel: "3.22.3"
      env_variables: >-
        {
          "CHANNEL": "3.22.3"
        }

  - name: Linux analyze_legacy N-2
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: analyze_legacy.yaml
      channel: "3.19.6"
      env_variables: >-
        {
          "CHANNEL": "3.19.6"
        }

  - name: Linux_android custom_package_tests master
    recipe: packages/packages
    timeout: 30
    dimensions:
      kvm: "1"
    properties:
      add_recipes_cq: "true"
      version_file: flutter_master.version
      target_file: linux_custom_package_tests.yaml
      # Pigeon tests need Andoid deps (thus the Linux_android base), emulator,
      # and Linux desktop deps.
      # web_benchmarks needs Chrome.
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"},
          {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"},
          {"dependency": "cmake", "version": "build_id:8787856497187628321"},
          {"dependency": "ninja", "version": "version:1.9.0"},
          {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"}
        ]
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_android custom_package_tests stable
    recipe: packages/packages
    timeout: 30
    dimensions:
      kvm: "1"
    properties:
      version_file: flutter_stable.version
      target_file: linux_custom_package_tests.yaml
      # See comments on 'master' version above.
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"},
          {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"},
          {"dependency": "cmake", "version": "build_id:8787856497187628321"},
          {"dependency": "ninja", "version": "version:1.9.0"},
          {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"}
        ]
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  ### Android tasks ###
  - name: Linux_android android_build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_master.version
      # This builds the all_packages app only in a current JDK.
      target_file: android_build_all_packages_jdk17.yaml
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_android android_build_all_packages_legacy master
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_master.version
      # TODO(stuartmorgan): Once stable requires JDK 17, and the
      # legacy project is updated accordingly, this entire target
      # can be merged back into android_build_all_packages.
      # This file only builds a *legacy* version of the project.
      target_file: android_build_all_packages_legacy.yaml
      channel: master
      # The legacy project build requires an older JDK.
      dependencies: >-
        [
          {"dependency": "open_jdk", "version": "version:11"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_android android_build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      version_file: flutter_stable.version
      # This builds the all_packages app only in a current JDK.
      target_file: android_build_all_packages_jdk17.yaml
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Linux_android android_build_all_packages_legacy stable
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_stable.version
      # This file only builds a *legacy* version of the project.
      target_file: android_build_all_packages_legacy.yaml
      channel: stable
      # The legacy project build requires an older JDK.
      dependencies: >-
        [
          {"dependency": "open_jdk", "version": "version:11"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Linux_android android_platform_tests_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_3 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 2 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_4 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 3 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_5 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 4 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_6 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 5 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 5 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_1 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 0 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_2 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 1 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_3 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 2 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_4 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 3 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_5 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 4 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 6"
        }

  - name: Linux_android android_platform_tests_shard_6 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      target_file: android_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 5 --shardCount 6"
      dependencies: >-
        [
          {"dependency": "android_virtual_device", "version": "android_34_google_apis_x64.textpb"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 5 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_3 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 2 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_4 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 3 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_5 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 4 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 6"
        }

  - name: Linux_android_legacy android_platform_tests_legacy_api_shard_6 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: android_legacy_emulator_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 5 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 5 --shardCount 6"
        }

  # Device versions of Android integration tests, run via FTL.
  # TODO(stuartmorgan): Revisit whether physical device tests are redundant once
  # we have more data about emulator tests; see
  # https://github.com/flutter/flutter/issues/131429.

  - name: Linux_android android_device_tests_shard_1 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 6"
        }

  - name: Linux_android android_device_tests_shard_2 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 6"
        }

  - name: Linux_android android_device_tests_shard_3 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 2 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 6"
        }

  - name: Linux_android android_device_tests_shard_4 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 3 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 6"
        }

  - name: Linux_android android_device_tests_shard_5 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 4 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 6"
        }

  - name: Linux_android android_device_tests_shard_6 master
    recipe: packages/packages
    timeout: 90
    properties:
      target_file: android_device_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 5 --shardCount 6"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 5 --shardCount 6"
        }

  ### Web tasks ###
  - name: Linux_web web_build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      version_file: flutter_master.version
      target_file: web_build_all_packages.yaml
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_web web_build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_stable.version
      target_file: web_build_all_packages.yaml
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Linux_web web_platform_tests_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_master.version
      channel: master
      package_sharding: "--shardIndex 0 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 3"
        }

  - name: Linux_web web_platform_tests_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_master.version
      channel: master
      package_sharding: "--shardIndex 1 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 3"
        }

  - name: Linux_web web_platform_tests_shard_3 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_master.version
      channel: master
      package_sharding: "--shardIndex 2 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 3"
        }

  - name: Linux_web web_platform_tests_shard_1 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_stable.version
      channel: stable
      package_sharding: "--shardIndex 0 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 3"
        }

  - name: Linux_web web_platform_tests_shard_2 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_stable.version
      channel: stable
      package_sharding: "--shardIndex 1 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 3"
        }

  - name: Linux_web web_platform_tests_shard_3 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: web_platform_tests.yaml
      version_file: flutter_stable.version
      channel: stable
      package_sharding: "--shardIndex 2 --shardCount 3"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 3"
        }

  ### Linux desktop tasks
  - name: Linux_desktop build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      version_file: flutter_master.version
      target_file: linux_build_all_packages.yaml
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_desktop build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_stable.version
      target_file: linux_build_all_packages.yaml
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Linux_desktop platform_tests master
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_master.version
      target_file: linux_platform_tests.yaml
      channel: master
      # Install Chrome as a default handler for schemes for url_launcher.
      dependencies: >-
        [
          {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux_desktop platform_tests stable
    recipe: packages/packages
    presubmit: false
    timeout: 30
    properties:
      version_file: flutter_stable.version
      target_file: linux_platform_tests.yaml
      channel: stable
      # Install Chrome as a default handler for schemes for url_launcher.
      dependencies: >-
        [
          {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  ### iOS+macOS tasks ###
  - name: Mac_arm64 macos_repo_checks
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_master.version
      target_file: macos_repo_checks.yaml
      dependencies: >
        [
          {"dependency": "swift_format", "version": "build_id:8797338979890974865"}
        ]

  ### macOS desktop tasks ###
  # macos-platform_tests builds all the packages on ARM, so this build is run
  # on Intel to give us build coverage of both host types.
  - name: Mac_x64 build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      version_file: flutter_master.version
      target_file: macos_build_all_packages.yaml
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Mac_x64 build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      version_file: flutter_stable.version
      target_file: macos_build_all_packages.yaml
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  # TODO(stuartmorgan): Remove "- packages" from all task names once
  # flutter/plugins is merged into this repo and turned down; it's here only
  # because names must be unique across all flutter repositories.
  - name: Mac_arm64 macos_platform_tests master - packages
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      add_recipes_cq: "true"
      version_file: flutter_master.version
      target_file: macos_platform_tests.yaml
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Mac_arm64 macos_platform_tests stable - packages
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: macos_platform_tests.yaml
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Mac_arm64 custom_package_tests master
    recipe: packages/packages
    timeout: 60
    properties:
      version_file: flutter_master.version
      target_file: macos_custom_package_tests.yaml
      channel: master
      env_variables: >-
        {
          "CHANNEL": "master"
        }
      dependencies: >
        [
          {"dependency": "swift_format", "version": "build_id:8797338979890974865"}
        ]

  - name: Mac_arm64 custom_package_tests stable
    recipe: packages/packages
    timeout: 60
    properties:
      version_file: flutter_stable.version
      target_file: macos_custom_package_tests.yaml
      channel: stable
      env_variables: >-
        {
          "CHANNEL": "stable"
        }
      dependencies: >
        [
          {"dependency": "swift_format", "version": "build_id:8797338979890974865"}
        ]

  ### iOS tasks ###
  # ios_platform_tests builds all the packages on ARM, so this build is run
  # on Intel to give us build coverage of both host types.
  - name: Mac_x64 ios_build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      channel: master
      version_file: flutter_master.version
      target_file: ios_build_all_packages.yaml
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Mac_x64 ios_build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_build_all_packages.yaml
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Mac_arm64 ios_platform_tests_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      add_recipes_cq: "true"
      version_file: flutter_master.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 0 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      version_file: flutter_master.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 1 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_3 master
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      version_file: flutter_master.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 2 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_4 master
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      version_file: flutter_master.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 3 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_5 master
    recipe: packages/packages
    timeout: 60
    properties:
      channel: master
      version_file: flutter_master.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 4 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 5"
        }

  # Don't run full platform tests on both channels in pre-submit.
  - name: Mac_arm64 ios_platform_tests_shard_1 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 0 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_2 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 1 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_3 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 2 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 2 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_4 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 3 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 3 --shardCount 5"
        }

  - name: Mac_arm64 ios_platform_tests_shard_5 stable
    recipe: packages/packages
    presubmit: false
    timeout: 60
    properties:
      channel: stable
      version_file: flutter_stable.version
      target_file: ios_platform_tests.yaml
      package_sharding: "--shardIndex 4 --shardCount 5"
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 4 --shardCount 5"
        }

  ### Windows desktop tasks ###
  - name: Windows_x64 custom_package_tests master - packages
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_custom_package_tests.yaml
      channel: master
      version_file: flutter_master.version
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Windows_x64 dart_unit_tests_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Windows_x64 dart_unit_tests_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_dart_unit_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Windows_x64 win32-platform_tests_shard_1 master
    recipe: packages/packages
    timeout: 60
    properties:
      add_recipes_cq: "true"
      target_file: windows_build_and_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Windows_x64 win32-platform_tests_shard_2 master
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_build_and_platform_tests.yaml
      channel: master
      version_file: flutter_master.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Windows_x64 win32-platform_tests_shard_1 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_build_and_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 0 --shardCount 2"
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 0 --shardCount 2"
        }

  - name: Windows_x64 win32-platform_tests_shard_2 stable
    recipe: packages/packages
    timeout: 60
    properties:
      target_file: windows_build_and_platform_tests.yaml
      channel: stable
      version_file: flutter_stable.version
      package_sharding: "--shardIndex 1 --shardCount 2"
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable",
          "PACKAGE_SHARDING": "--shardIndex 1 --shardCount 2"
        }

  - name: Windows_x64 windows-build_all_packages master
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: windows_build_all_packages.yaml
      channel: master
      version_file: flutter_master.version
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Windows_arm64 windows-build_all_packages master
    recipe: packages/packages
    presubmit: false
    timeout: 30
    bringup: true # https://github.com/flutter/flutter/issues/134083
    properties:
      add_recipes_cq: "true"
      target_file: windows_build_all_packages.yaml
      channel: master
      version_file: flutter_master.version
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Windows_x64 windows-build_all_packages stable
    recipe: packages/packages
    timeout: 30
    properties:
      target_file: windows_build_all_packages.yaml
      channel: stable
      version_file: flutter_stable.version
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Windows_arm64 windows-build_all_packages stable
    recipe: packages/packages
    presubmit: false
    timeout: 30
    bringup: true
    properties:
      target_file: windows_build_all_packages.yaml
      channel: stable
      version_file: flutter_stable.version
      dependencies: >
        [
          {"dependency": "vs_build", "version": "version:vs2019"}
        ]
      env_variables: >-
        {
          "CHANNEL": "stable"
        }

  - name: Windows_x64 repo_tools_tests
    recipe: packages/packages
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: repo_tools_tests.yaml
      channel: master
      version_file: flutter_master.version
      env_variables: >-
        {
          "CHANNEL": "master"
        }

  - name: Linux ci_yaml packages roller
    recipe: infra/ci_yaml
    timeout: 30
    runIf:
      - .ci.yaml
    properties:
      backfill: "false"
