ci(one): drop empty APPLE_* env to prevent codesign import failure #4
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
| name: one | |
| on: | |
| push: | |
| tags: | |
| - 'one-v*' | |
| workflow_dispatch: | |
| inputs: | |
| release: | |
| description: 'Create a draft GitHub release with the artifacts' | |
| type: boolean | |
| default: false | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| name: ${{ matrix.label }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - label: macOS (arm64) | |
| os: macos-14 | |
| target: aarch64-apple-darwin | |
| bundle-dir: macos | |
| - label: macOS (x64) | |
| os: macos-13 | |
| target: x86_64-apple-darwin | |
| bundle-dir: macos | |
| - label: Windows (x64) | |
| os: windows-2022 | |
| target: x86_64-pc-windows-msvc | |
| bundle-dir: nsis | |
| - label: Linux (x64) | |
| os: ubuntu-22.04 | |
| target: x86_64-unknown-linux-gnu | |
| bundle-dir: deb | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Linux build deps | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| libwebkit2gtk-4.1-dev libssl-dev libayatana-appindicator3-dev \ | |
| librsvg2-dev patchelf libgtk-3-dev libsoup-3.0-dev | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10.28.2 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: pnpm | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: ${{ matrix.target }} | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: apps/objectos-one/src-tauri | |
| - name: Install workspace deps | |
| run: pnpm install --frozen-lockfile | |
| - name: Stage Node runtime | |
| run: pnpm --filter @objectos/one stage | |
| - name: Build Tauri bundle | |
| env: | |
| # Tauri updater key (no-password key generated via `signer generate --ci`). | |
| TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }} | |
| TAURI_SIGNING_PRIVATE_KEY_PASSWORD: "" | |
| run: pnpm --filter @objectos/one tauri build --target ${{ matrix.target }} | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: objectos-one-${{ matrix.target }} | |
| path: | | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.dmg | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.app | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.exe | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.msi | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.deb | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.AppImage | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.tar.gz | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.zip | |
| apps/objectos-one/src-tauri/target/${{ matrix.target }}/release/bundle/**/*.sig | |
| if-no-files-found: warn | |
| release: | |
| name: Draft release | |
| needs: build | |
| if: startsWith(github.ref, 'refs/tags/one-v') || inputs.release | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| path: artifacts | |
| - name: Generate latest.json (updater manifest) | |
| env: | |
| TAG: ${{ github.ref_name }} | |
| run: node .github/scripts/build-update-manifest.mjs artifacts "$TAG" > artifacts/latest.json | |
| - name: Create draft release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| draft: true | |
| generate_release_notes: true | |
| name: ObjectOS One ${{ github.ref_name }} | |
| files: | | |
| artifacts/**/*.dmg | |
| artifacts/**/*.exe | |
| artifacts/**/*.msi | |
| artifacts/**/*.deb | |
| artifacts/**/*.AppImage | |
| artifacts/**/*.tar.gz | |
| artifacts/**/*.zip | |
| artifacts/**/*.sig | |
| artifacts/latest.json |