Check for dev bumps to protect release versions (#6157) #598
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Copyright 2020 The Chromium Authors. All rights reserved. | |
# Use of this source code is governed by a BSD-style license that can be | |
# found in the LICENSE file. | |
name: devtools | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
# Declare default permissions as read only. | |
permissions: read-all | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
jobs: | |
flutter-prep: | |
uses: ./.github/workflows/flutter-prep.yaml | |
main: | |
name: main | |
needs: flutter-prep | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- name: git clone | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
- name: Load Cached Flutter SDK | |
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 | |
with: | |
path: | | |
./flutter-sdk | |
key: flutter-sdk-${{ runner.os }}-${{ needs.flutter-prep.outputs.latest_flutter_candidate }} | |
- name: tool/bots.sh | |
env: | |
BOT: main | |
run: ./tool/bots.sh | |
test: | |
name: ${{ matrix.bot }} | |
needs: flutter-prep | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
bot: | |
- build_ddc | |
- build_dart2js | |
- test_ddc | |
- test_dart2js | |
steps: | |
- name: git clone | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
- name: Load Cached Flutter SDK | |
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 | |
with: | |
path: | | |
./flutter-sdk | |
key: flutter-sdk-${{ runner.os }}-${{ needs.flutter-prep.outputs.latest_flutter_candidate }} | |
- name: tool/bots.sh | |
env: | |
BOT: ${{ matrix.bot }} | |
PLATFORM: vm | |
run: ./tool/bots.sh | |
macos-test: | |
needs: flutter-prep | |
name: macos goldens ${{ matrix.bot }} | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
bot: | |
- test_dart2js | |
only_golden: | |
- true | |
steps: | |
- name: git clone | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
- name: Load Cached Flutter SDK | |
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 | |
with: | |
path: | | |
./flutter-sdk | |
key: flutter-sdk-${{ runner.os }}-${{ needs.flutter-prep.outputs.latest_flutter_candidate }} | |
- name: tool/bots.sh | |
env: | |
BOT: ${{ matrix.bot }} | |
PLATFORM: vm | |
ONLY_GOLDEN: ${{ matrix.only_golden }} | |
run: ./tool/bots.sh | |
- name: Upload Golden Failure Artifacts | |
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce | |
if: failure() | |
with: | |
name: golden_image_failures.${{ matrix.bot }} | |
path: packages/devtools_app/test/**/failures/*.png | |
integration-test: | |
name: integration-test ${{ matrix.bot }} - ${{ matrix.device }} | |
needs: flutter-prep | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
bot: | |
# Consider running integration tests in ddc mode, too. | |
- dart2js | |
device: | |
- flutter | |
- flutter-web | |
- dart-cli | |
steps: | |
- name: git clone | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
- name: Load Cached Flutter SDK | |
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 | |
with: | |
path: | | |
./flutter-sdk | |
key: flutter-sdk-${{ runner.os }}-${{ needs.flutter-prep.outputs.latest_flutter_candidate }} | |
- name: tool/bots.sh | |
env: | |
BOT: ${{ matrix.bot }} | |
DEVICE: ${{ matrix.device }} | |
run: ./tool/bots.sh | |
- name: Upload Golden Failure Artifacts | |
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce | |
if: failure() | |
with: | |
name: golden_image_failures.${{ matrix.bot }} | |
path: packages/devtools_app/integration_test/**/failures/*.png | |
# TODO(https://github.com/flutter/devtools/issues/1715): add a windows compatible version of tool/bots.sh | |
# and run it from this job. | |
# windows-test: | |
# name: windows ${{ matrix.bot }} | |
# runs-on: windows-latest | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# bot: | |
# - test_dart2js | |
# steps: | |
# - name: git clone | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
# | |
# - name: tool/bots.sh | |
# env: | |
# BOT: ${{ matrix.bot }} | |
# PLATFORM: vm | |
# run: ./tool/bots.sh | |
# TODO(https://github.com/flutter/devtools/issues/1987): rewrite integration tests. | |
# integration: | |
# name: integration ${{ matrix.bot }} | |
# runs-on: ubuntu-latest | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# bot: | |
# - integration_ddc | |
# - integration_dart2js | |
# steps: | |
# - name: git clone | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
# - name: tool/bots.sh | |
# env: | |
# BOT: ${{ matrix.bot }} | |
# run: ./tool/bots.sh | |
# TODO(https://github.com/flutter/devtools/issues/2437): | |
# PLATFORM=chrome is going away. We need to move these tests to run with | |
# chromedriver. | |
# - BOT=test_ddc PLATFORM=chrome | |
# PLATFORM=chrome is going away. We need to move these tests to run with | |
# chromedriver. | |
# - BOT=test_dart2js PLATFORM=chrome | |