gcp_credentials: ENCRYPTED[!9e38557f08108136b3625b7e62c64cc9eccc50365ffeaaa55c6be52f1d8fd6225af5badc69983ca08484274f02f34424!]

# Run on PRs and main branch post submit only. Don't run tests when tagging.
only_if: $CIRRUS_TAG == '' && ($CIRRUS_PR != '' || $CIRRUS_BRANCH == 'main')
env:
  CHANNEL: "master" # Default to master when not explicitly set by a task.
  PLUGIN_TOOL_COMMAND: "dart pub global run flutter_plugin_tools"

install_chrome_linux_template: &INSTALL_CHROME_LINUX
  env:
    CHROME_NO_SANDBOX: true
    CHROME_DOWNLOAD_DIR: /tmp/chromium
    CHROME_EXECUTABLE: $CHROME_DOWNLOAD_DIR/chrome-linux/chrome
    CHROMEDRIVER_EXECUTABLE: $CHROME_DOWNLOAD_DIR/chromedriver/chromedriver
    PATH: $PATH:$CHROME_DOWNLOAD_DIR/chrome-linux
  install_chromium_script:
    # Install a pinned version of Chromium and its corresponding ChromeDriver.
    # Setting CHROME_EXECUTABLE above causes this version to be used for tests.
    - ./script/install_chromium.sh "$CHROME_DIR"

tool_setup_template: &TOOL_SETUP_TEMPLATE
  tool_setup_script:
    - .ci/scripts/prepare_tool.sh

macos_template: &MACOS_TEMPLATE
  # Only one macOS task can run in parallel without credits, so use them for
  # PRs on macOS.
  use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true'

macos_intel_template: &MACOS_INTEL_TEMPLATE
  << : *MACOS_TEMPLATE
  osx_instance:
    image: big-sur-xcode-13

macos_arm_template: &MACOS_ARM_TEMPLATE
  << : *MACOS_TEMPLATE
  macos_instance:
    image: ghcr.io/cirruslabs/macos-ventura-xcode:14

flutter_upgrade_template: &FLUTTER_UPGRADE_TEMPLATE
  upgrade_flutter_script:
    # Channels that are part of our normal test matrix use a pinned,
    # auto-rolled version to prevent out-of-band CI failures due to changes in
    # Flutter.
    - TARGET_TREEISH=$CHANNEL
    - if [[ "$CHANNEL" == "master" || "$CHANNEL" == "stable" ]]; then
    -   TARGET_TREEISH=$(< .ci/flutter_$CHANNEL.version)
    - fi
    # Ensure that the repository has all the branches.
    - cd $FLUTTER_HOME
    - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
    - git fetch origin
    # Switch to the requested channel.
    - git checkout $TARGET_TREEISH
    # When using a branch rather than a hash or version tag, reset to the
    # upstream branch rather than using pull, since the base image can sometimes
    # be in a state where it has diverged from upstream (!).
    - if [[ "$TARGET_TREEISH" == "$CHANNEL" ]] && [[ "$CHANNEL" != *"."* ]]; then
    -   git reset --hard @{u}
    - fi
    # Run doctor to allow auditing of what version of Flutter the run is using.
    - flutter doctor -v
  << : *TOOL_SETUP_TEMPLATE

# Ensures that the latest versions of all of the 1P packages can be used
# together. See script/configs/exclude_all_packages_app.yaml for exceptions.
build_all_packages_app_template: &BUILD_ALL_PACKAGES_APP_TEMPLATE
  create_all_packages_app_script:
    - $PLUGIN_TOOL_COMMAND all-plugins-app --output-dir=. --exclude script/configs/exclude_all_packages_app.yaml
  build_all_packages_debug_script:
    - cd all_plugins
    - if [[ "$BUILD_ALL_ARGS" == "web" ]]; then
    -   echo "Skipping; web does not support debug builds"
    - else
    -   flutter build $BUILD_ALL_ARGS --debug
    - fi
  build_all_packages_release_script:
    - cd all_plugins
    - flutter build $BUILD_ALL_ARGS --release

# Light-workload Linux tasks.
# These use default machines, with fewer CPUs, to reduce pressure on the
# concurrency limits.
task:
  << : *FLUTTER_UPGRADE_TEMPLATE
  gke_container:
    dockerfile: .ci/Dockerfile
    builder_image_name: docker-builder-linux # gce vm image
    builder_image_project: flutter-cirrus
    cluster_name: test-cluster
    zone: us-central1-a
    namespace: default
  matrix:
    ### Platform-agnostic tasks ###
    # Repository rules and best-practice enforcement.
    # Only channel-agnostic tests should go here since it is only run once
    # (on Flutter master).
    - name: repo_checks
      always:
        format_script: ./script/tool_runner.sh format --fail-on-change
        license_script: $PLUGIN_TOOL_COMMAND license-check
        pubspec_script: ./script/tool_runner.sh pubspec-check
        readme_script:
          - ./script/tool_runner.sh readme-check
          # Re-run with --require-excerpts, skipping packages that still need
          # to be converted. Once https://github.com/flutter/flutter/issues/102679
          # has been fixed, this can be removed and there can just be a single
          # run with --require-excerpts and no exclusions.
          - ./script/tool_runner.sh readme-check --require-excerpts --exclude=script/configs/temp_exclude_excerpt.yaml
        dependabot_script: $PLUGIN_TOOL_COMMAND dependabot-check
        version_script:
          # For pre-submit, pass the PR labels to the script to allow for
          # check overrides.
          # For post-submit, ignore platform version breaking version changes
          # and missing version/CHANGELOG detection since the labels aren't
          # available outside of the context of the PR.
          - if [[ $CIRRUS_PR == "" ]]; then
          -   ./script/tool_runner.sh version-check --ignore-platform-interface-breaks
          - else
          -   ./script/tool_runner.sh version-check --check-for-missing-changes --pr-labels="$CIRRUS_PR_LABELS"
          - fi
        publishable_script: ./script/tool_runner.sh publish-check --allow-pre-release
        federated_safety_script:
          # This check is only meaningful for PRs, as it validates changes
          # rather than state.
          - if [[ $CIRRUS_PR == "" ]]; then
          -   ./script/tool_runner.sh federation-safety-check
          - else
          -   echo "Only run in presubmit"
          - fi
    - name: dart_unit_tests
      env:
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      unit_test_script:
        - ./script/tool_runner.sh test --exclude=script/configs/dart_unit_tests_exceptions.yaml
      pathified_unit_test_script:
        # Run tests with path-based dependencies to ensure that publishing
        # the changes won't break tests of other packages in the respository
        # that depend on it.
        - ./script/tool_runner.sh make-deps-path-based --target-dependencies-with-non-breaking-updates
        - $PLUGIN_TOOL_COMMAND test --run-on-dirty-packages --exclude=script/configs/dart_unit_tests_exceptions.yaml
    - name: analyze
      env:
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      analyze_script:
        - ./script/tool_runner.sh analyze --custom-analysis=script/configs/custom_analysis.yaml
      pathified_analyze_script:
        # Re-run analysis with path-based dependencies to ensure that publishing
        # the changes won't break analysis of other packages in the respository
        # that depend on it.
        - ./script/tool_runner.sh make-deps-path-based --target-dependencies-with-non-breaking-updates
        # This uses --run-on-dirty-packages rather than --packages-for-branch
        # since only the packages changed by 'make-deps-path-based' need to be
        # checked.
        - $PLUGIN_TOOL_COMMAND analyze --run-on-dirty-packages --log-timing --custom-analysis=script/configs/custom_analysis.yaml
        # Restore the tree to a clean state, to avoid accidental issues if
        # other script steps are added to this task.
        - git checkout .
    # Does a sanity check that packages at least pass analysis on the N-1 and N-2
    # versions of Flutter stable if the package claims to support that version.
    # This is to minimize accidentally making changes that break old versions
    # (which we don't commit to supporting, but don't want to actively break)
    # without updating the constraints.
    # Note: The versions below should be manually updated after a new stable
    # version comes out.
    - name: legacy_version_analyze
      depends_on: analyze
      matrix:
        env:
          CHANNEL: "3.0.5"
          DART_VERSION: "2.17.6"
        env:
          CHANNEL: "2.10.5"
          DART_VERSION: "2.16.2"
      package_prep_script:
        # Allow analyzing packages that use a dev dependency with a higher
        # minimum Flutter/Dart version than the package itself.
        - ./script/tool_runner.sh remove-dev-dependencies
      analyze_script:
        # Only analyze lib/; non-client code doesn't need to work on
        # all supported legacy version.
        - ./script/tool_runner.sh analyze --lib-only --skip-if-not-supporting-flutter-version="$CHANNEL" --skip-if-not-supporting-dart-version="$DART_VERSION" --custom-analysis=script/configs/custom_analysis.yaml
    # Does a sanity check that packages pass analysis with the lowest possible
    # versions of all dependencies. This is to catch cases where we add use of
    # new APIs but forget to update minimum versions of dependencies to where
    # those APIs are introduced.
    - name: downgraded_analyze
      depends_on: analyze
      analyze_script:
        - ./script/tool_runner.sh analyze --downgrade --custom-analysis=script/configs/custom_analysis.yaml
    - name: readme_excerpts
      env:
        CIRRUS_CLONE_SUBMODULES: true
      script: ./script/tool_runner.sh update-excerpts --fail-on-change
    - name: linux-custom_package_tests
      env:
        PATH: $PATH:/usr/local/bin
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *INSTALL_CHROME_LINUX
      local_tests_script:
        # pigeon tests currently don't support Linux:
        #   https://github.com/flutter/flutter/issues/100386
        # flutter_image
        #   https://github.com/flutter/flutter/issues/100387
        - if [[ "$CHANNEL" == "master" ]]; then
        -   ./script/tool_runner.sh custom-test --exclude=pigeon
        - else
        -   ./script/tool_runner.sh custom-test --exclude=pigeon,flutter_image
        - fi
    ### Web tasks ###
    - name: web-build_all_packages
      env:
        BUILD_ALL_ARGS: "web"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *BUILD_ALL_PACKAGES_APP_TEMPLATE
    ### Linux desktop tasks ###
    - name: linux-build_all_packages
      env:
        BUILD_ALL_ARGS: "linux"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *BUILD_ALL_PACKAGES_APP_TEMPLATE
    - name: linux-platform_tests
      # Don't run full platform tests on both channels in pre-submit.
      skip: $CIRRUS_PR != '' && $CHANNEL == 'stable'
      env:
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      build_script:
        - ./script/tool_runner.sh build-examples --linux
      native_test_script:
        - xvfb-run ./script/tool_runner.sh native-test --linux --no-integration
      drive_script:
        - xvfb-run ./script/tool_runner.sh drive-examples --linux

# Heavy-workload Linux tasks.
# These use machines with more CPUs and memory, so will reduce parallelization
# for non-credit runs.
task:
  << : *FLUTTER_UPGRADE_TEMPLATE
  gke_container:
    dockerfile: .ci/Dockerfile
    builder_image_name: docker-builder-linux # gce vm image
    builder_image_project: flutter-cirrus
    cluster_name: test-cluster
    zone: us-central1-a
    namespace: default
    cpu: 4
    memory: 12G
  matrix:
    ### Android tasks ###
    - name: android-platform_tests
      # Don't run full platform tests on both channels in pre-submit.
      skip: $CIRRUS_PR != '' && $CHANNEL == 'stable'
      env:
        matrix:
          PACKAGE_SHARDING: "--shardIndex 0 --shardCount 2"
          PACKAGE_SHARDING: "--shardIndex 1 --shardCount 2"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      build_script:
        # extension_google_sign_in_as_googleapis_auth is currently not building, see
        # https://github.com/flutter/flutter/issues/89301
        - ./script/tool_runner.sh build-examples --apk --exclude=extension_google_sign_in_as_googleapis_auth
      lint_script:
        - ./script/tool_runner.sh lint-android # must come after build-examples
      native_unit_test_scipt:
        - ./script/tool_runner.sh native-test --android --no-integration
      # Upload the full lint results to Cirrus to display in the results UI.
      always:
        android-lint_artifacts:
          path: "**/reports/lint-results-debug.xml"
          type: text/xml
          format: android-lint
    - name: android-build_all_packages
      env:
        BUILD_ALL_ARGS: "apk"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *BUILD_ALL_PACKAGES_APP_TEMPLATE
    ### Web tasks ###
    - name: web-platform_tests
      env:
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *INSTALL_CHROME_LINUX
      chromedriver_background_script:
        - $CHROMEDRIVER_EXECUTABLE --port=4444
      build_script:
        - ./script/tool_runner.sh build-examples --web
      drive_script:
        # google_identity_services_web tests need Dart >=2.17, which is not available in stable.
        - if [[ "$CHANNEL" == "master" ]]; then
        -   ./script/tool_runner.sh drive-examples --web
        - else
        -   ./script/tool_runner.sh drive-examples --web --exclude=google_identity_services_web
        - fi
    - name: web_benchmarks_test
      env:
        matrix:
          CHROMIUM_BUILD: "768968" # Chromium 84.0.4147.0
          CHROMIUM_BUILD: "950363" # Chromium 98.0.4758.0
      << : *INSTALL_CHROME_LINUX
      script:
        - cd packages/web_benchmarks/testing/test_app
        - flutter packages get
        - cd ../..
        - flutter packages get
        - dart testing/web_benchmarks_test.dart

# ARM macOS tasks.
task:
  << : *FLUTTER_UPGRADE_TEMPLATE
  << : *MACOS_ARM_TEMPLATE
  matrix:
    - name: macos-custom_package_tests
      env:
        PATH: $PATH:/usr/local/bin
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      local_tests_script:
        # flutter_image
        #   https://github.com/flutter/flutter/issues/100387
        # script/configs/linux_only_custom_test.yaml
        #   Custom tests need Chrome for these packages. (They run in linux-custom_package_tests)
        - if [[ "$CHANNEL" == "master" ]]; then
        -   ./script/tool_runner.sh custom-test --exclude=script/configs/linux_only_custom_test.yaml
        - else
        -   ./script/tool_runner.sh custom-test --exclude=flutter_image,script/configs/linux_only_custom_test.yaml
        - fi
    ### iOS tasks ###
    - name: ios-platform_tests
      # Don't run full platform tests on both channels in pre-submit.
      skip: $CIRRUS_PR != '' && $CHANNEL == 'stable'
      env:
        PATH: $PATH:/usr/local/bin
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      create_simulator_script:
        - xcrun simctl list
        - xcrun simctl create Flutter-iPhone com.apple.CoreSimulator.SimDeviceType.iPhone-13 com.apple.CoreSimulator.SimRuntime.iOS-16-0 | xargs xcrun simctl boot
      build_script:
        - ./script/tool_runner.sh build-examples --ios
      native_test_script:
        - ./script/tool_runner.sh native-test --ios --ios-destination "platform=iOS Simulator,name=iPhone 13,OS=latest"
      drive_script:
        # `drive-examples` contains integration tests, which changes the UI of the application.
        # This UI change sometimes affects `xctest`.
        # So we run `drive-examples` after `native-test`; changing the order will result ci failure.
        - ./script/tool_runner.sh drive-examples --ios
      xcode_analyze_script:
        - ./script/tool_runner.sh xcode-analyze --ios
      xcode_analyze_deprecation_script:
        # Ensure we don't accidentally introduce deprecated code.
        - ./script/tool_runner.sh xcode-analyze --ios --ios-min-version=13.0
    ### iOS tasks ###
    - name: ios-build_all_packages
      env:
        BUILD_ALL_ARGS: "ios --no-codesign"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      << : *BUILD_ALL_PACKAGES_APP_TEMPLATE
    ### macOS desktop tasks ###
    - name: macos-platform_tests
      # Don't run full platform tests on both channels in pre-submit.
      skip: $CIRRUS_PR != '' && $CHANNEL == 'stable'
      env:
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
        PATH: $PATH:/usr/local/bin
      build_script:
        - ./script/tool_runner.sh build-examples --macos
      xcode_analyze_script:
        - ./script/tool_runner.sh xcode-analyze --macos
      xcode_analyze_deprecation_script:
        # Ensure we don't accidentally introduce deprecated code.
        - ./script/tool_runner.sh xcode-analyze --macos --macos-min-version=12.3
      native_test_script:
        - ./script/tool_runner.sh native-test --macos
      drive_script:
        - ./script/tool_runner.sh drive-examples --macos

# Intel macOS tasks.
task:
  << : *MACOS_INTEL_TEMPLATE
  << : *FLUTTER_UPGRADE_TEMPLATE
  matrix:
    ### 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: macos-build_all_packages
      env:
        BUILD_ALL_ARGS: "macos"
        matrix:
          CHANNEL: "master"
          CHANNEL: "stable"
      setup_script:
      << : *BUILD_ALL_PACKAGES_APP_TEMPLATE
