Skip to content
This repository has been archived by the owner on Feb 23, 2024. It is now read-only.

feat: update dependencies #163

feat: update dependencies

feat: update dependencies #163

Workflow file for this run

name: my_plugin
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
pull_request:
paths:
- ".github/workflows/my_plugin.yaml"
- "src/my_plugin/my_plugin/**"
push:
branches:
- main
paths:
- ".github/workflows/my_plugin.yaml"
- "src/my_plugin/my_plugin/**"
jobs:
spell-check:
uses: VeryGoodOpenSource/very_good_workflows/.github/workflows/spell_check.yml@v1
with:
includes: |
**/*.md
!brick/**/*.md
.*/**/*.md
modified_files_only: false
build:
uses: VeryGoodOpenSource/very_good_workflows/.github/workflows/flutter_package.yml@v1
with:
flutter_channel: stable
flutter_version: 3.13.2
working_directory: src/my_plugin/my_plugin
android:
runs-on: macos-latest
if: false # TODO: Integration tests are flaky, see https://github.com/VeryGoodOpenSource/very_good_flutter_plugin/issues/79
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
with:
distribution: "temurin"
java-version: "11"
- uses: subosito/flutter-action@v2
- name: Flutter Doctor
run: flutter doctor -v
- name: AVD Cache
uses: actions/cache@v3
id: avd-cache
with:
path: |
~/.android/avd/*
~/.android/adb*
key: avd-29
- name: Cache AVD Snapshot
if: steps.avd-cache.outputs.cache-hit != 'true'
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 29
force-avd-creation: false
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
disable-animations: false
script: echo "Generated AVD snapshot for caching."
- name: Integration Tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 29
script: flutter test integration_test
working-directory: src/my_plugin/my_plugin/example
ios:
runs-on: macos-latest
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
- name: Flutter Doctor
run: flutter doctor -v
- name: Start Simulator
# Start an iPhone simulator
run: |
UDID=$(xcrun xctrace list devices | grep "^iPhone" | awk '{gsub(/[()]/,""); print $NF}' | head -n 1)
echo $UDID
xcrun simctl boot "${UDID:?No Simulator with this name found}"
- name: Integration Tests
run: flutter test integration_test -d iPhone
linux:
runs-on: ubuntu-18.04
if: false # TODO: Integration tests are flaky, see https://github.com/VeryGoodOpenSource/very_good_flutter_plugin/issues/79
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libx11-dev pkg-config cmake ninja-build libblkid-dev liblzma-dev
- name: Enable desktop support
run: flutter config --enable-linux-desktop
- name: Flutter Doctor
run: flutter doctor -v
- name: Integration Tests
run: xvfb-run flutter test integration_test -d linux
macos:
runs-on: macos-latest
if: false # TODO: Macos tests are flaky, see https://github.com/VeryGoodOpenSource/very_good_flutter_plugin/issues/79
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
- name: Enable desktop support
run: flutter config --enable-macos-desktop
- name: Flutter Doctor
run: flutter doctor -v
- name: Integration Tests
run: flutter test integration_test -d macos
web:
runs-on: macos-latest
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
- name: Flutter Doctor
run: flutter doctor -v
- name: Run Chromedriver
run: |
git clone https://github.com/felangel/web_installers
cd web_installers/packages/web_drivers
dart pub get
dart lib/web_driver_installer.dart chromedriver --install-only
./chromedriver/chromedriver --port=4444 &
- name: Integration Tests
run: flutter drive --driver test_driver/integration_test.dart --target integration_test/app_test.dart -d web-server --browser-name=chrome
windows:
runs-on: windows-2019
defaults:
run:
working-directory: src/my_plugin/my_plugin/example
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
- name: Enable desktop support
run: flutter config --enable-windows-desktop
- name: Flutter Doctor
run: flutter doctor -v
- name: Integration Tests
run: flutter test integration_test -d windows