# 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:
      caches: >-
        [
        ]
      dependencies: >
        [
          {"dependency": "curl"}
        ]
      device_type: none
      os: Linux
  windows:
    properties:
      caches: >-
        [
          {"name": "vsbuild", "path": "vsbuild"},
          {"name": "pub_cache", "path": ".pub-cache"}
        ]
      dependencies: >
        [
          {"dependency": "certs"}
        ]
      device_type: none
      os: Windows

targets:
  - name: Windows win32-platform_tests master
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: windows_build_and_platform_tests.yaml
      dependencies: >
        [
          {"dependency": "vs_build"}
        ]
    scheduler: luci

  - name: Windows win32-platform_tests stable
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: windows_build_and_platform_tests.yaml
      channel: stable
      dependencies: >
        [
          {"dependency": "vs_build"}
        ]
    scheduler: luci

  - name: Windows windows-build_all_plugins master
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: build_all_plugins.yaml
      dependencies: >
        [
          {"dependency": "vs_build"}
        ]
    scheduler: luci

  - name: Windows windows-build_all_plugins stable
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: build_all_plugins.yaml
      channel: stable
      dependencies: >
        [
          {"dependency": "vs_build"}
        ]
    scheduler: luci

  - name: Windows uwp-platform_tests master
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: uwp_build_and_platform_tests.yaml
      dependencies: >
        [
          {"dependency": "vs_build"}
        ]
    scheduler: luci

  - name: Windows plugin_tools_tests
    recipe: plugins/plugins
    timeout: 30
    properties:
      add_recipes_cq: "true"
      target_file: plugin_tools_tests.yaml
    scheduler: luci

  - name: Linux ci_yaml plugins roller
    recipe: infra/ci_yaml
    timeout: 30
    scheduler: luci
    runIf:
      - .ci.yaml
