name: Beta Branch CI

# Declare default permissions as read only.
permissions: read-all

on:
  push:
    branches: [beta]
  pull_request:
    branches: [beta]
  workflow_dispatch:

defaults:
  run:
    shell: bash

jobs:
  # Run the stable test script on the beta channel. Since this branch will soon
  # be merged into main as our stable-targeting code, this is the key thing we
  # need to test.
  stable-tests-on-beta:
    runs-on: ${{ matrix.os }}
    if: github.repository == 'flutter/samples'
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
    steps:
      - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
      - uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00
        with:
          distribution: 'zulu'
          java-version: '17'
      - uses: subosito/flutter-action@e938fdf56512cc96ef2f93601a5a40bde3801046
        with:
          channel: beta
      - run: ./tool/flutter_ci_script_stable.sh
  
  # Verify the Android add-to-app samples build and pass tests with the beta
  # channel.
  # android-build:
  #   runs-on: ubuntu-latest
  #   if: github.repository == 'flutter/samples'
  #   steps:
  #     - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
  #     - uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00
  #       with:
  #         distribution: 'zulu'
  #         java-version: '17'
  #     - uses: subosito/flutter-action@e938fdf56512cc96ef2f93601a5a40bde3801046
  #       with:
  #         channel: beta
  #     - run: ./tool/android_ci_script.sh

  # Verify the iOS add-to-app samples build and pass tests with the beta
  # channel.
  ios-build:
    runs-on: macos-latest
    if: github.repository == 'flutter/samples'
    steps:
      - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
      - uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00
        with:
          distribution: 'zulu'
          java-version: '17'
      - uses: subosito/flutter-action@e938fdf56512cc96ef2f93601a5a40bde3801046
        with:
          channel: beta
      - run: ./tool/ios_ci_script.sh
