# Created with package:mono_repo v6.3.0
name: Dart CI
on:
  push:
    branches:
      - main
      - master
  pull_request:
  schedule:
    - cron: "0 0 * * 0"
defaults:
  run:
    shell: bash
env:
  PUB_ENVIRONMENT: bot.github
permissions: read-all

jobs:
  job_001:
    name: mono_repo self validate
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - name: mono_repo self validate
        run: dart pub global activate mono_repo 6.3.0
      - name: mono_repo self validate
        run: dart pub global run mono_repo generate --validate
  job_002:
    name: "analyze_and_format; linux; Dart dev; PKGS: integration_tests/nnbd_opted_in, integration_tests/nnbd_opted_out, integration_tests/spawn_hybrid, pkgs/checks, pkgs/test, pkgs/test_api, pkgs/test_core; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_in-integration_tests/nnbd_opted_out-integration_tests/spawn_hybrid-pkgs/checks-pkgs/test-pkgs/test_api-pkgs/test_core;commands:format-analyze"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_in-integration_tests/nnbd_opted_out-integration_tests/spawn_hybrid-pkgs/checks-pkgs/test-pkgs/test_api-pkgs/test_core
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_in_pub_upgrade
        name: integration_tests/nnbd_opted_in; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_in; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "integration_tests/nnbd_opted_in; dart analyze --fatal-infos"
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart analyze --fatal-infos
      - id: integration_tests_nnbd_opted_out_pub_upgrade
        name: integration_tests/nnbd_opted_out; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_out; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "integration_tests/nnbd_opted_out; dart analyze --fatal-infos"
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart analyze --fatal-infos
      - id: integration_tests_spawn_hybrid_pub_upgrade
        name: integration_tests/spawn_hybrid; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart pub upgrade
      - name: "integration_tests/spawn_hybrid; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "integration_tests/spawn_hybrid; dart analyze --fatal-infos"
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart analyze --fatal-infos
      - id: pkgs_checks_pub_upgrade
        name: pkgs/checks; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/checks
        run: dart pub upgrade
      - name: "pkgs/checks; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.pkgs_checks_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/checks
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "pkgs/checks; dart analyze --fatal-infos"
        if: "always() && steps.pkgs_checks_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/checks
        run: dart analyze --fatal-infos
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "pkgs/test; dart analyze --fatal-infos"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart analyze --fatal-infos
      - id: pkgs_test_api_pub_upgrade
        name: pkgs/test_api; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart pub upgrade
      - name: "pkgs/test_api; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.pkgs_test_api_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "pkgs/test_api; dart analyze --fatal-infos"
        if: "always() && steps.pkgs_test_api_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart analyze --fatal-infos
      - id: pkgs_test_core_pub_upgrade
        name: pkgs/test_core; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test_core
        run: dart pub upgrade
      - name: "pkgs/test_core; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.pkgs_test_core_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_core
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "pkgs/test_core; dart analyze --fatal-infos"
        if: "always() && steps.pkgs_test_core_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_core
        run: dart analyze --fatal-infos
  job_003:
    name: "unit_test; linux; Dart dev; PKG: integration_tests/nnbd_opted_in; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_in;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_in
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_in_pub_upgrade
        name: integration_tests/nnbd_opted_in; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_in; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_004:
    name: "unit_test; linux; Dart dev; PKG: integration_tests/nnbd_opted_out; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_out;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/nnbd_opted_out
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_out_pub_upgrade
        name: integration_tests/nnbd_opted_out; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_out; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_005:
    name: "unit_test; linux; Dart dev; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/spawn_hybrid;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:integration_tests/spawn_hybrid
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_spawn_hybrid_pub_upgrade
        name: integration_tests/spawn_hybrid; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart pub upgrade
      - name: "integration_tests/spawn_hybrid; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_006:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test;commands:command_00"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0"
    needs:
      - job_001
      - job_002
  job_007:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test;commands:command_01"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1"
    needs:
      - job_001
      - job_002
  job_008:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test;commands:command_02"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2"
    needs:
      - job_001
      - job_002
  job_009:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test;commands:command_03"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3"
    needs:
      - job_001
      - job_002
  job_010:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test;commands:command_04"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4"
    needs:
      - job_001
      - job_002
  job_011:
    name: "unit_test; linux; Dart dev; PKG: pkgs/test_api; `dart test --preset travis -x browser`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test_api;commands:command_10"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:pkgs/test_api
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_api_pub_upgrade
        name: pkgs/test_api; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart pub upgrade
      - name: "pkgs/test_api; dart test --preset travis -x browser"
        if: "always() && steps.pkgs_test_api_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart test --preset travis -x browser
    needs:
      - job_001
      - job_002
  job_012:
    name: "unit_test; linux; Dart stable; PKG: integration_tests/nnbd_opted_in; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/nnbd_opted_in;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/nnbd_opted_in
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_in_pub_upgrade
        name: integration_tests/nnbd_opted_in; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_in; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_013:
    name: "unit_test; linux; Dart stable; PKG: integration_tests/nnbd_opted_out; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/nnbd_opted_out;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/nnbd_opted_out
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_out_pub_upgrade
        name: integration_tests/nnbd_opted_out; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_out; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_014:
    name: "unit_test; linux; Dart stable; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/spawn_hybrid;commands:test"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:integration_tests/spawn_hybrid
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_spawn_hybrid_pub_upgrade
        name: integration_tests/spawn_hybrid; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart pub upgrade
      - name: "integration_tests/spawn_hybrid; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_015:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test;commands:command_00"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0"
    needs:
      - job_001
      - job_002
  job_016:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test;commands:command_01"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1"
    needs:
      - job_001
      - job_002
  job_017:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test;commands:command_02"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2"
    needs:
      - job_001
      - job_002
  job_018:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test;commands:command_03"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3"
    needs:
      - job_001
      - job_002
  job_019:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test;commands:command_04"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: "xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4"
    needs:
      - job_001
      - job_002
  job_020:
    name: "unit_test; linux; Dart stable; PKG: pkgs/test_api; `dart test --preset travis -x browser`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@4504faf7e9bcf8f3ed0bc863c4e1d21499ab8ef8
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test_api;commands:command_10"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:pkgs/test_api
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_api_pub_upgrade
        name: pkgs/test_api; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart pub upgrade
      - name: "pkgs/test_api; dart test --preset travis -x browser"
        if: "always() && steps.pkgs_test_api_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test_api
        run: dart test --preset travis -x browser
    needs:
      - job_001
      - job_002
  job_021:
    name: "unit_test; windows; Dart dev; PKG: integration_tests/nnbd_opted_in; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_in_pub_upgrade
        name: integration_tests/nnbd_opted_in; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_in; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_022:
    name: "unit_test; windows; Dart dev; PKG: integration_tests/nnbd_opted_out; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_out_pub_upgrade
        name: integration_tests/nnbd_opted_out; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_out; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_023:
    name: "unit_test; windows; Dart dev; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_spawn_hybrid_pub_upgrade
        name: integration_tests/spawn_hybrid; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart pub upgrade
      - name: "integration_tests/spawn_hybrid; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_024:
    name: "unit_test; windows; Dart stable; PKG: integration_tests/nnbd_opted_in; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_in_pub_upgrade
        name: integration_tests/nnbd_opted_in; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_in; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_in_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_in
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_025:
    name: "unit_test; windows; Dart stable; PKG: integration_tests/nnbd_opted_out; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_nnbd_opted_out_pub_upgrade
        name: integration_tests/nnbd_opted_out; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: dart pub upgrade
      - name: "integration_tests/nnbd_opted_out; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_nnbd_opted_out_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/nnbd_opted_out
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_026:
    name: "unit_test; windows; Dart stable; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: integration_tests_spawn_hybrid_pub_upgrade
        name: integration_tests/spawn_hybrid; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: dart pub upgrade
      - name: "integration_tests/spawn_hybrid; dart test -p chrome,vm,node"
        if: "always() && steps.integration_tests_spawn_hybrid_pub_upgrade.conclusion == 'success'"
        working-directory: integration_tests/spawn_hybrid
        run: "dart test -p chrome,vm,node"
    needs:
      - job_001
      - job_002
  job_027:
    name: "unit_test; windows; Dart stable; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 0`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart test --preset travis --total-shards 5 --shard-index 0"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart test --preset travis --total-shards 5 --shard-index 0
    needs:
      - job_001
      - job_002
  job_028:
    name: "unit_test; windows; Dart stable; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 1`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart test --preset travis --total-shards 5 --shard-index 1"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart test --preset travis --total-shards 5 --shard-index 1
    needs:
      - job_001
      - job_002
  job_029:
    name: "unit_test; windows; Dart stable; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 2`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart test --preset travis --total-shards 5 --shard-index 2"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart test --preset travis --total-shards 5 --shard-index 2
    needs:
      - job_001
      - job_002
  job_030:
    name: "unit_test; windows; Dart stable; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 3`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart test --preset travis --total-shards 5 --shard-index 3"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart test --preset travis --total-shards 5 --shard-index 3
    needs:
      - job_001
      - job_002
  job_031:
    name: "unit_test; windows; Dart stable; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 4`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@d0651293c4a5a52e711f25b41b05b2212f385d28
      - id: pkgs_test_pub_upgrade
        name: pkgs/test; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart pub upgrade
      - name: "pkgs/test; dart test --preset travis --total-shards 5 --shard-index 4"
        if: "always() && steps.pkgs_test_pub_upgrade.conclusion == 'success'"
        working-directory: pkgs/test
        run: dart test --preset travis --total-shards 5 --shard-index 4
    needs:
      - job_001
      - job_002
  job_032:
    name: Notify failure
    runs-on: ubuntu-latest
    if: "(github.event_name == 'push' || github.event_name == 'schedule') && failure()"
    steps:
      - run: |
          curl -H "Content-Type: application/json" -X POST -d \
            "{'text':'Build failed! ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}'}" \
            "${CHAT_WEBHOOK_URL}"
        env:
          CHAT_WEBHOOK_URL: "${{ secrets.BUILD_AND_TEST_TEAM_CHAT_WEBHOOK_URL }}"
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
      - job_006
      - job_007
      - job_008
      - job_009
      - job_010
      - job_011
      - job_012
      - job_013
      - job_014
      - job_015
      - job_016
      - job_017
      - job_018
      - job_019
      - job_020
      - job_021
      - job_022
      - job_023
      - job_024
      - job_025
      - job_026
      - job_027
      - job_028
      - job_029
      - job_030
      - job_031
