updated deps #593
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
| name: 'Build Test' | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| inputs: | |
| runner-type: | |
| type: choice | |
| description: 'The type of runner to use' | |
| required: true | |
| default: 'ubuntu-24.04' | |
| options: | |
| - 'ubuntu-24.04' | |
| - 'ubuntu-24.04-arm' | |
| - 'macos-latest' | |
| build-for: | |
| type: choice | |
| description: 'The target to build for' | |
| required: true | |
| default: 'desktop' | |
| options: | |
| - 'desktop' | |
| - 'android' | |
| env: | |
| ANDROID_NDK_VERSION: '26.3.11579264' | |
| NODE_VERSION: '20.x' | |
| jobs: | |
| build-desktop: | |
| if: ${{ !github.event.inputs.build-for || github.event.inputs.build-for == 'desktop' }} | |
| runs-on: ${{ github.event.inputs.runner-type || 'ubuntu-24.04' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Required Packages | |
| if: ${{ runner.os == 'Linux' }} | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y build-essential curl wget file libssl-dev libayatana-appindicator3-dev \ | |
| librsvg2-dev libwebkit2gtk-4.1-0=2.44.0-2 libwebkit2gtk-4.1-dev=2.44.0-2 \ | |
| libjavascriptcoregtk-4.1-0=2.44.0-2 libjavascriptcoregtk-4.1-dev=2.44.0-2 \ | |
| gir1.2-javascriptcoregtk-4.1=2.44.0-2 gir1.2-webkit2-4.1=2.44.0-2 | |
| - name: Install Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Cache Rust Project | |
| uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ runner.os }}-${{ github.event.inputs.runner-type }}-rust | |
| workspaces: src-tauri | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'npm' | |
| - name: Install NPM Dependencies | |
| run: npm ci | |
| - name: Setup JDK | |
| uses: actions/setup-java@v4 | |
| if: github.event.inputs.build-for == 'android' | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' | |
| - name: Setup Android SDK | |
| if: github.event.inputs.build-for == 'android' | |
| uses: android-actions/setup-android@v3 | |
| with: | |
| packages: "build-tools;34.0.0 ndk;${{ env.ANDROID_NDK_VERSION }} platforms;android-34" | |
| - name: Add NDK to PATH | |
| if: github.event.inputs.build-for == 'android' | |
| shell: bash | |
| run: | | |
| echo ${NDK_HOME}/toolchains/llvm/prebuilt/*/bin >> $GITHUB_PATH | |
| env: | |
| NDK_HOME: "${{ env.ANDROID_HOME }}/ndk/${{ env.ANDROID_NDK_VERSION }}" | |
| - name: Build for Desktop | |
| run: npm run build -- --features=vendored-openssl | |
| build-android: | |
| if: ${{ !github.event.inputs.build-for || github.event.inputs.build-for == 'android' }} | |
| runs-on: ${{ github.event.inputs.runner-type || 'ubuntu-24.04' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Cache Rust Project | |
| uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ runner.os }}-${{ github.event.inputs.runner-type }}-rust | |
| workspaces: src-tauri | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'npm' | |
| - name: Install NPM Dependencies | |
| run: npm ci | |
| - name: Setup JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' | |
| - name: Setup Android SDK | |
| uses: android-actions/setup-android@v3 | |
| with: | |
| packages: "build-tools;34.0.0 ndk;${{ env.ANDROID_NDK_VERSION }} platforms;android-33" | |
| - name: Add NDK to PATH | |
| shell: bash | |
| run: | | |
| echo ${NDK_HOME}/toolchains/llvm/prebuilt/*/bin >> $GITHUB_PATH | |
| env: | |
| NDK_HOME: "${{ env.ANDROID_HOME }}/ndk/${{ env.ANDROID_NDK_VERSION }}" | |
| - name: Tauri init | |
| run: npm run tauri android init | |
| env: | |
| NDK_HOME: "${{ env.ANDROID_HOME }}/ndk/${{ env.ANDROID_NDK_VERSION }}" | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: 3.3 | |
| bundler-cache: 'true' | |
| - name: Build for Android | |
| uses: maierj/[email protected] | |
| with: | |
| lane: build | |
| env: | |
| NDK_HOME: "${{ env.ANDROID_HOME }}/ndk/${{ env.ANDROID_NDK_VERSION }}" |