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

jobs:
  job_001:
    name: mono_repo self validate
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        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@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - name: mono_repo self validate
        run: dart pub global activate mono_repo 6.2.2
      - name: mono_repo self validate
        run: dart pub global run mono_repo generate --validate
  job_002:
    name: "analyzer_and_format; linux; Dart dev; PKG: dwds; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos .`, `dart test test/build/ensure_version_test.dart`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:dwds;commands:format-analyze_0-test_0"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:dwds
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: "dwds; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "dwds; dart analyze --fatal-infos ."
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart analyze --fatal-infos .
      - name: dwds; dart test test/build/ensure_version_test.dart
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test test/build/ensure_version_test.dart
  job_003:
    name: "analyzer_and_format; linux; Dart dev; PKGS: example, fixtures/_webdevSmoke, frontend_server_client, frontend_server_common; `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@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:example-fixtures/_webdevSmoke-frontend_server_client-frontend_server_common;commands:format-analyze_0"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:example-fixtures/_webdevSmoke-frontend_server_client-frontend_server_common
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: example_pub_upgrade
        name: example; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: example
        run: dart pub upgrade
      - name: "example; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.example_pub_upgrade.conclusion == 'success'"
        working-directory: example
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "example; dart analyze --fatal-infos ."
        if: "always() && steps.example_pub_upgrade.conclusion == 'success'"
        working-directory: example
        run: dart analyze --fatal-infos .
      - id: fixtures__webdevSmoke_pub_upgrade
        name: fixtures/_webdevSmoke; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: fixtures/_webdevSmoke
        run: dart pub upgrade
      - name: "fixtures/_webdevSmoke; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.fixtures__webdevSmoke_pub_upgrade.conclusion == 'success'"
        working-directory: fixtures/_webdevSmoke
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "fixtures/_webdevSmoke; dart analyze --fatal-infos ."
        if: "always() && steps.fixtures__webdevSmoke_pub_upgrade.conclusion == 'success'"
        working-directory: fixtures/_webdevSmoke
        run: dart analyze --fatal-infos .
      - id: frontend_server_client_pub_upgrade
        name: frontend_server_client; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart pub upgrade
      - name: "frontend_server_client; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "frontend_server_client; dart analyze --fatal-infos ."
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart analyze --fatal-infos .
      - id: frontend_server_common_pub_upgrade
        name: frontend_server_common; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_common
        run: dart pub upgrade
      - name: "frontend_server_common; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.frontend_server_common_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_common
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "frontend_server_common; dart analyze --fatal-infos ."
        if: "always() && steps.frontend_server_common_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_common
        run: dart analyze --fatal-infos .
  job_004:
    name: "analyzer_and_format; linux; Dart dev; PKG: webdev; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos .`, `dart test test/build/ensure_build_test.dart`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:webdev;commands:format-analyze_0-test_4"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; dart format --output=none --set-exit-if-changed ."
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: "dart format --output=none --set-exit-if-changed ."
      - name: "webdev; dart analyze --fatal-infos ."
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart analyze --fatal-infos .
      - name: webdev; dart test test/build/ensure_build_test.dart
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test test/build/ensure_build_test.dart
  job_005:
    name: "analyzer_and_format; linux; Dart stable; PKGS: dwds, webdev; `dart analyze .`, `dart test test/build/min_sdk_test.dart --run-skipped`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:dwds-webdev;commands:analyze_1-test_1"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:dwds-webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: dwds; dart analyze .
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart analyze .
      - name: "dwds; dart test test/build/min_sdk_test.dart --run-skipped"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test test/build/min_sdk_test.dart --run-skipped
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: webdev; dart analyze .
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart analyze .
      - name: "webdev; dart test test/build/min_sdk_test.dart --run-skipped"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test test/build/min_sdk_test.dart --run-skipped
  job_006:
    name: "unit_test; linux; Dart dev; PKG: dwds; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:dwds;commands:command-test_2"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:dwds
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: "dwds; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: dwds; dart test
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_007:
    name: "unit_test; linux; Dart dev; PKG: frontend_server_client; `dart test`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:frontend_server_client;commands:test_2"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:frontend_server_client
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: frontend_server_client_pub_upgrade
        name: frontend_server_client; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart pub upgrade
      - name: frontend_server_client; dart test
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_008:
    name: "unit_test; linux; Dart dev; PKG: webdev; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test -j 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:webdev;commands:command-test_3"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:dev;packages:webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:dev
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_009:
    name: "unit_test; linux; Dart stable; PKG: dwds; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:dwds;commands:command-test_2"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:dwds
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: "dwds; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: dwds; dart test
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_010:
    name: "unit_test; linux; Dart stable; PKG: frontend_server_client; `dart test`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:frontend_server_client;commands:test_2"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:frontend_server_client
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: frontend_server_client_pub_upgrade
        name: frontend_server_client; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart pub upgrade
      - name: frontend_server_client; dart test
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_011:
    name: "unit_test; linux; Dart stable; PKG: webdev; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test -j 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:webdev;commands:command-test_3"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:stable;packages:webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:stable
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_012:
    name: "unit_test; windows; Dart dev; PKG: dwds; `dart test`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: dwds; dart test
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_013:
    name: "unit_test; windows; Dart dev; PKG: frontend_server_client; `dart test`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: frontend_server_client_pub_upgrade
        name: frontend_server_client; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart pub upgrade
      - name: frontend_server_client; dart test
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_014:
    name: "unit_test; windows; Dart dev; PKG: webdev; `dart test -j 1`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: dev
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_015:
    name: "unit_test; windows; Dart stable; PKG: dwds; `dart test`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: dwds; dart test
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_016:
    name: "unit_test; windows; Dart stable; PKG: frontend_server_client; `dart test`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: frontend_server_client_pub_upgrade
        name: frontend_server_client; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart pub upgrade
      - name: frontend_server_client; dart test
        if: "always() && steps.frontend_server_client_pub_upgrade.conclusion == 'success'"
        working-directory: frontend_server_client
        run: dart test
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_017:
    name: "unit_test; windows; Dart stable; PKG: webdev; `dart test -j 1`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: stable
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    needs:
      - job_001
      - job_002
      - job_003
      - job_004
      - job_005
  job_018:
    name: "beta_cron; linux; Dart beta; PKG: dwds; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test -j 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:dwds;commands:command-test_3"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:dwds
            os:ubuntu-latest;pub-cache-hosted;sdk:beta
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: "dwds; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: "dwds; dart test -j 1"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test -j 1
    if: "github.event_name == 'schedule'"
    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_019:
    name: "beta_cron; linux; Dart beta; PKG: webdev; `Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &`, `dart test -j 1`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:webdev;commands:command-test_3"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:beta
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: "Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &"
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    if: "github.event_name == 'schedule'"
    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_020:
    name: "beta_cron; linux; Dart beta; PKG: dwds; `dart analyze .`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:dwds;commands:analyze_1"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:dwds
            os:ubuntu-latest;pub-cache-hosted;sdk:beta
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: dwds; dart analyze .
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart analyze .
    if: "github.event_name == 'schedule'"
    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_021:
    name: "beta_cron; linux; Dart beta; PKG: webdev; `dart analyze .`"
    runs-on: ubuntu-latest
    steps:
      - name: Cache Pub hosted dependencies
        uses: actions/cache@v3
        with:
          path: "~/.pub-cache/hosted"
          key: "os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:webdev;commands:analyze_1"
          restore-keys: |
            os:ubuntu-latest;pub-cache-hosted;sdk:beta;packages:webdev
            os:ubuntu-latest;pub-cache-hosted;sdk:beta
            os:ubuntu-latest;pub-cache-hosted
            os:ubuntu-latest
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: webdev; dart analyze .
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart analyze .
    if: "github.event_name == 'schedule'"
    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_022:
    name: "beta_cron; windows; Dart beta; PKG: dwds; `dart test -j 1`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: dwds_pub_upgrade
        name: dwds; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: dwds
        run: dart pub upgrade
      - name: "dwds; dart test -j 1"
        if: "always() && steps.dwds_pub_upgrade.conclusion == 'success'"
        working-directory: dwds
        run: dart test -j 1
    if: "github.event_name == 'schedule'"
    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_023:
    name: "beta_cron; windows; Dart beta; PKG: webdev; `dart test -j 1`"
    runs-on: windows-latest
    steps:
      - uses: dart-lang/setup-dart@v1.3
        with:
          sdk: beta
      - id: checkout
        uses: actions/checkout@v3
      - id: webdev_pub_upgrade
        name: webdev; dart pub upgrade
        if: "always() && steps.checkout.conclusion == 'success'"
        working-directory: webdev
        run: dart pub upgrade
      - name: "webdev; dart test -j 1"
        if: "always() && steps.webdev_pub_upgrade.conclusion == 'success'"
        working-directory: webdev
        run: dart test -j 1
    if: "github.event_name == 'schedule'"
    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_024:
    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
