# This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. name: PR check on: push: branches: ["main"] pull_request: branches: ["main"] env: # Stub iap package if this worlflow is running from the PR from a fork STUB_IAP: ${{ github.event.pull_request.head.repo.full_name != github.repository }} jobs: analyze_and_test: name: Analyze & test runs-on: macos-11 timeout-minutes: 10 steps: - uses: actions/checkout@v3 with: submodules: recursive - name: Connect private iap package uses: webfactory/ssh-agent@v0.8.0 if: ${{ !env.STUB_IAP }} with: ssh-private-key: ${{ secrets.M3_LIGHTMETER_IAP_KEY }} - name: Override iap package with stub if: ${{ env.STUB_IAP }} run: | echo "\ndependency_overrides:\n m3_lightmeter_iap:\n path: iap" >> pubspec.yaml - uses: subosito/flutter-action@v2 with: channel: "stable" flutter-version: "3.10.0" - name: Prepare flutter project run: | flutter --version flutter pub get flutter pub run intl_utils:generate - name: Analyze project source run: flutter analyze lib --fatal-infos - name: Run tests run: flutter test