Repository navigation
Remove haskellUseScrollDemo: build scroll-demo test app directly #122
Workflow file for this run
This file contains hidden or 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
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - master | |
| permissions: | |
| actions: write | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| android: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Local cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: /nix/store | |
| key: "${{ runner.os }}-nix-android-cache" | |
| restore-keys: | | |
| ${{ runner.os }}-nix-android- | |
| - uses: cachix/install-nix-action@v31 | |
| with: | |
| extra_nix_config: | | |
| access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} | |
| extra-substituters = https://nix-cache.jappie.me | |
| extra-trusted-public-keys = nix-cache.jappie.me:WjkKcvFtHih2i+n7bdsrJ3HuGboJiU2hA2CZbf9I9oc= | |
| - run: nix-build | |
| - run: nix-build nix/android.nix | |
| - run: nix-build nix/apk.nix -o result-apk | |
| - name: Upload Android APK | |
| if: github.ref == 'refs/heads/master' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: haskell-mobile-android | |
| path: result-apk/haskell-mobile.apk | |
| - name: Build UI test | |
| run: nix-build nix/emulator-ui.nix -o result-emulator-ui | |
| - name: Run UI rendering test | |
| run: ./result-emulator-ui/bin/test-ui | |
| - name: Cancel workflow on failure | |
| if: failure() | |
| continue-on-error: true | |
| run: gh run cancel ${{ github.run_id }} | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| ios: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Local cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: /nix/store | |
| key: "${{ runner.os }}-nix-ios-cache" | |
| restore-keys: | | |
| ${{ runner.os }}-nix-ios- | |
| - uses: cachix/install-nix-action@v31 | |
| with: | |
| extra_nix_config: | | |
| access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} | |
| extra-substituters = https://nix-cache.jappie.me | |
| extra-trusted-public-keys = nix-cache.jappie.me:WjkKcvFtHih2i+n7bdsrJ3HuGboJiU2hA2CZbf9I9oc= | |
| - run: nix-build nix/ios.nix | |
| - name: Build simulator test | |
| run: nix-build nix/simulator.nix -o result-simulator | |
| - name: Run simulator lifecycle test | |
| run: ./result-simulator/bin/test-lifecycle-ios | |
| - name: Build UI test | |
| run: nix-build nix/simulator-ui.nix -o result-simulator-ui | |
| - name: Run UI rendering test | |
| run: ./result-simulator-ui/bin/test-ui-ios | |
| - name: Upload iOS library | |
| if: github.ref == 'refs/heads/master' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: haskell-mobile-ios | |
| path: | | |
| result/lib/libHaskellMobile.a | |
| result/include/HaskellMobile.h | |
| - name: Cancel workflow on failure | |
| if: failure() | |
| continue-on-error: true | |
| run: gh run cancel ${{ github.run_id }} | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| android-ui-buttons: | |
| needs: [android] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Local cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: /nix/store | |
| key: "${{ runner.os }}-nix-android-cache" | |
| restore-keys: | | |
| ${{ runner.os }}-nix-android- | |
| - uses: cachix/install-nix-action@v31 | |
| with: | |
| extra_nix_config: | | |
| access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} | |
| extra-substituters = https://nix-cache.jappie.me | |
| extra-trusted-public-keys = nix-cache.jappie.me:WjkKcvFtHih2i+n7bdsrJ3HuGboJiU2hA2CZbf9I9oc= | |
| - name: Build UI buttons test | |
| run: nix-build nix/emulator-ui-buttons.nix -o result-emulator-ui-buttons | |
| - name: Run UI two-button test | |
| run: ./result-emulator-ui-buttons/bin/test-ui-buttons | |
| - name: Cancel workflow on failure | |
| if: failure() | |
| continue-on-error: true | |
| run: gh run cancel ${{ github.run_id }} | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| ios-ui-buttons: | |
| needs: [ios] | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Local cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: /nix/store | |
| key: "${{ runner.os }}-nix-ios-cache" | |
| restore-keys: | | |
| ${{ runner.os }}-nix-ios- | |
| - uses: cachix/install-nix-action@v31 | |
| with: | |
| extra_nix_config: | | |
| access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} | |
| extra-substituters = https://nix-cache.jappie.me | |
| extra-trusted-public-keys = nix-cache.jappie.me:WjkKcvFtHih2i+n7bdsrJ3HuGboJiU2hA2CZbf9I9oc= | |
| - name: Build UI buttons test | |
| run: nix-build nix/simulator-ui-buttons.nix -o result-simulator-ui-buttons | |
| - name: Run UI two-button test | |
| run: ./result-simulator-ui-buttons/bin/test-ui-buttons-ios | |
| - name: Cancel workflow on failure | |
| if: failure() | |
| continue-on-error: true | |
| run: gh run cancel ${{ github.run_id }} | |
| env: | |
| GH_TOKEN: ${{ github.token }} |