# 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
  - master

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
