Skip to content

Test

Test #3301

Workflow file for this run

name: Test
on:
# Run CI on pushes to the main branch, and on PRs against main.
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: 0 15 * * *
# Declare default permissions as read only.
permissions: read-all
env:
PUB_ENVIRONMENT: bot.github
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
sdk: [dev, stable]
job: [main, flutter, packages, sdk-docs]
include:
- os: macos-latest
sdk: dev
job: main
- os: windows-latest
sdk: dev
job: main
exclude:
# Do not try to run flutter against the "stable" sdk,
# it is unlikely to work and produces uninteresting
# results.
- sdk: stable
job: flutter
- sdk: stable
job: sdk-docs
steps:
- name: Store date
id: date
run: echo "name=today::$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
shell: bash
- name: Cache clean flutter
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8
if: matrix.job == 'flutter'
env:
# Increment version to invalidate bad/obsolete caches.
cache-name: cache-grinder-flutter-v1
with:
path: ~/.dartdoc_grinder
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ steps.date.outputs.today }}
- name: Cache .pub-cache
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8
if: matrix.job == 'flutter'
env:
# Increment version to invalidate bad/obsolete caches.
cache-name: cache-dart-pub-v1
with:
path: ~/.pub-cache
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ steps.date.outputs.today }}
- name: Configure git
if: runner.os == 'Windows'
run: git config --global core.autocrlf input
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9
- uses: dart-lang/setup-dart@d6a63dab3335f427404425de0fbfed4686d93c4f
with:
sdk: ${{ matrix.sdk }}
- name: Install dependencies
run: dart pub get
- name: ${{ matrix.job }}
if: runner.os != 'Windows'
run: ./tool/ci.sh
env:
DARTDOC_BOT: ${{ matrix.job }}
- name: ${{ matrix.job }}
if: runner.os == 'Windows' && matrix.job == 'main'
run: dart run tool\task.dart buildbot
env:
DARTDOC_BOT: ${{ matrix.job }}