Skip to content

Feature/smilescreens #407

Feature/smilescreens

Feature/smilescreens #407

Workflow file for this run

name: Lint Build and Test
on:
pull_request:
push:
branches: [ main ]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
Flutter:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.10.6' # Set the desired Flutter version here
channel: 'stable'
- name: Install Dependencies
run: flutter pub get && cd example && flutter pub get && cd ..
- name: Lint Flutter
run: flutter analyze
Android:
runs-on: ubuntu-latest
timeout-minutes: 10
strategy:
matrix:
flutter-version: ['3.10.6', '3.22.2']
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
- uses: subosito/flutter-action@v2
with:
flutter-version: ${{ matrix.flutter-version }}
channel: 'stable'
- name: Install Dependencies
run: flutter pub get && cd example && flutter pub get && cd ..
- name: Lint Android
uses: musichin/ktlint-check@v3
with:
ktlint-version: "1.1.1"
code-style: android_studio
patterns: |
**/**.kt
!**/generated/**
- name: Test
run: flutter test && cd example && flutter test && cd ..
- name: Build Android Sample App
run: cd example && flutter build apk && cd ..
iOS:
# TODO: Change back to macos-latest once it points to macOS 14 (Q2 '24)
runs-on: macos-14
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- run: touch example/ios/smile_config.json
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.10.6' # Set the desired Flutter version here
channel: 'stable'
- name: Setup Cocoapods
uses: maxim-lobanov/setup-cocoapods@v1
with:
version: 1.14.3
- name: Install Dependencies
run: flutter pub get && cd example && flutter pub get && cd ..
- name: Build iOS Sample App
run: cd example/ios && pod install && flutter build ios --no-codesign && cd ..