feat(device_info_plus)!: Return model name for iOS and MacOS devices #659
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
# Build Device Info Plus Example | |
name: device_info_plus | |
concurrency: | |
group: device_info_plus_${{ github.head_ref || github.ref_name }} | |
cancel-in-progress: true | |
defaults: | |
run: | |
shell: bash | |
on: | |
pull_request: | |
paths: | |
- "packages/device_info_plus/**" | |
- ".github/workflows/device_info_plus.yaml" | |
- "!**.md" | |
- "!**.gitignore" | |
env: | |
PLUGIN_SCOPE: "*device_info_plus*" | |
PLUGIN_EXAMPLE_SCOPE: "*device_info_plus_example*" | |
jobs: | |
analyze: | |
name: "Dart Analyzer" | |
timeout-minutes: 15 | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: | | |
./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos bootstrap | |
- name: "Run Dart Analyze" | |
uses: invertase/github-action-dart-analyzer@v3 | |
with: | |
fatal-infos: false | |
fatal-warnings: true | |
annotate: true | |
working-directory: ./packages/device_info_plus | |
android_example_build: | |
runs-on: macos-14 | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh android ./lib/main.dart | |
android_integration_test: | |
# Use non M1 machine till https://github.com/ReactiveCircus/android-emulator-runner/issues/350 is resolved | |
runs-on: macos-13 | |
timeout-minutes: 30 | |
strategy: | |
fail-fast: false | |
matrix: | |
android-api-level: [ 22, 26, 31, 34 ] | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos bootstrap --scope="$PLUGIN_SCOPE" | |
- name: "Android Integration Test" | |
uses: reactivecircus/android-emulator-runner@v2 | |
with: | |
api-level: ${{ matrix.android-api-level }} | |
cores: 3 | |
target: google_apis | |
arch: x86_64 | |
force-avd-creation: false | |
profile: Nexus 5X | |
script: ./.github/workflows/scripts/integration-test.sh android device_info_plus_example | |
ios_example_build: | |
runs-on: macos-14 | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh ios ./lib/main.dart | |
ios_integration_test: | |
runs-on: macos-14 | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos bootstrap --scope="$PLUGIN_SCOPE" | |
- name: "Start Simulator" | |
uses: futureware-tech/simulator-action@v4 | |
with: | |
model: 'iPhone 15' | |
os: iOS | |
os_version: 18.1 | |
- name: "Run Integration Test" | |
run: ./.github/workflows/scripts/integration-test.sh ios device_info_plus_example | |
macos_example_build: | |
runs-on: macos-14 | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh macos ./lib/main.dart | |
macos_integration_test: | |
runs-on: macos-14 | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos bootstrap --scope="$PLUGIN_SCOPE" | |
- name: "Run Integration Test" | |
run: ./.github/workflows/scripts/integration-test.sh macos device_info_plus_example | |
linux_example_build: | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh linux ./lib/main.dart | |
linux_integration_test: | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos bootstrap --scope="$PLUGIN_SCOPE" | |
- name: "Run Integration Test" | |
run: ./.github/workflows/scripts/integration-test.sh linux device_info_plus_example | |
windows_example_build: | |
runs-on: windows-latest | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh windows ./lib/main.dart | |
windows_integration_test: | |
runs-on: windows-latest | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Bootstrap Workspace" | |
run: melos.bat bootstrap --scope="$PLUGIN_SCOPE" | |
- name: "Run Integration Test" | |
run: ./.github/workflows/scripts/integration-test.sh windows device_info_plus_example | |
web_example_build: | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Install Flutter" | |
run: ./.github/workflows/scripts/install-flutter.sh stable | |
- name: "Install Tools" | |
run: ./.github/workflows/scripts/install-tools.sh | |
- name: "Build Example" | |
run: ./.github/workflows/scripts/build-examples.sh web ./lib/main.dart |