99 release :
1010 permissions :
1111 contents : write
12- runs-on : macos-latest
12+ strategy :
13+ fail-fast : false
14+ matrix :
15+ include :
16+ - platform : ' macos-latest' # Apple Silicon runner for ARM builds
17+ args : ' --target aarch64-apple-darwin'
18+ - platform : ' macos-13' # Intel runner for x86_64 builds
19+ args : ' --target x86_64-apple-darwin'
20+
21+ runs-on : ${{ matrix.platform }}
1322 steps :
1423 - name : Checkout repository
1524 uses : actions/checkout@v4
1625
17- - name : Debug environment variables
18- env :
19- TAURI_SIGNING_PRIVATE_KEY : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
20- TAURI_SIGNING_PRIVATE_KEY_PASSWORD : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
21- run : |
22- echo "=== DEBUGGING SIGNING SETUP ==="
23- echo "TAURI_SIGNING_PRIVATE_KEY length: ${#TAURI_SIGNING_PRIVATE_KEY}"
24- echo "TAURI_SIGNING_PRIVATE_KEY_PASSWORD length: ${#TAURI_SIGNING_PRIVATE_KEY_PASSWORD}"
25- echo "First 50 chars of key: ${TAURI_SIGNING_PRIVATE_KEY:0:50}..."
26- echo "Key ends with: ...${TAURI_SIGNING_PRIVATE_KEY: -20}"
27- echo "Password is set: $([ -n "$TAURI_SIGNING_PRIVATE_KEY_PASSWORD" ] && echo "YES" || echo "NO")"
28-
2926 - name : Rust setup
3027 uses : dtolnay/rust-toolchain@stable
3128 with :
32- targets : aarch64-apple-darwin
29+ targets : ${{ matrix.platform == 'macos-latest' && ' aarch64-apple-darwin' || 'x86_64-apple-darwin' }}
3330
3431 - name : Rust cache
3532 uses : swatinem/rust-cache@v2
4542 - name : Install frontend dependencies
4643 run : npm install
4744
48- - name : Verify signing setup before build
49- env :
50- TAURI_SIGNING_PRIVATE_KEY : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
51- TAURI_SIGNING_PRIVATE_KEY_PASSWORD : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
52- run : |
53- echo "=== TESTING SIGNING BEFORE BUILD ==="
54-
55- # Create a temporary key file to test
56- echo "$TAURI_SIGNING_PRIVATE_KEY" > /tmp/test_key.key
57- echo "β
Key file created successfully"
58-
59- # Test if we can use the key with tauri signer
60- echo "test content for signing" > /tmp/test.txt
61- echo "π Attempting manual signing test..."
62-
63- if tauri signer sign /tmp/test.txt -f /tmp/test_key.key -p "$TAURI_SIGNING_PRIVATE_KEY_PASSWORD"; then
64- echo "β
Manual signing test SUCCEEDED"
65- ls -la /tmp/test.txt*
66- else
67- echo "β Manual signing test FAILED"
68- echo "This indicates the private key or password is incorrect"
69- fi
70-
71- # Clean up
72- rm -f /tmp/test_key.key /tmp/test.txt*
73-
7445 - name : Build the app
7546 uses : tauri-apps/tauri-action@v0
7647 env :
@@ -79,46 +50,22 @@ jobs:
7950 TAURI_SIGNING_PRIVATE_KEY_PASSWORD : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
8051 with :
8152 tagName : ${{ github.ref_name }}
82- releaseName : ' ManyMany.dev v__VERSION__ (Debug Build) '
53+ releaseName : ' ManyMany.dev v__VERSION__'
8354 releaseBody : |
84- ## Debug Release v__VERSION__
85-
86- This is a debug build to test the signing and update system.
87-
88- **What we're testing:**
89- - Proper code signing with corrected key pair
90- - Automatic generation of latest.json with real signatures
91- - End-to-end update functionality
92-
93- **Technical details:**
94- - ARM-only build for Apple Silicon Macs
95- - Enhanced logging for signing diagnostics
96- - Version: __VERSION__
55+ ## What's New
56+ - Enhanced automatic update system with improved UI notifications
57+ - Better error handling and progress tracking for updates
58+ - Development mode testing support with detailed logging
59+ - Proper code signing for secure automatic updates
60+
61+ ## Installation
62+ Download the appropriate installer for your Mac:
63+ - **Apple Silicon Macs (M1/M2/M3)**: Download the `aarch64` version
64+ - **Intel Macs**: Download the `x64` version
65+
66+ ## Automatic Updates
67+ This version includes an automatic update system that will notify you when new versions are available.
9768 releaseDraft : false
9869 prerelease : false
99- args : --target aarch64-apple-darwin
70+ args : ${{ matrix.args }}
10071 includeUpdaterJson : true
101-
102- - name : Debug build artifacts and signing results
103- run : |
104- echo "=== POST-BUILD ARTIFACT ANALYSIS ==="
105-
106- echo "π Searching for signature files..."
107- find src-tauri/target -name "*.sig" -ls || echo "β No .sig files found"
108-
109- echo "π Searching for tar.gz files..."
110- find src-tauri/target -name "*.tar.gz*" -ls
111-
112- echo "π Checking bundle directory structure..."
113- find src-tauri/target -type f -name "*ManyMany*" | head -20
114-
115- echo "π Looking for any signing-related files..."
116- find src-tauri/target -name "*sign*" -o -name "*.key" -o -name "*.pub" | head -10
117-
118- echo "π Directory structure of release bundle..."
119- ls -la src-tauri/target/aarch64-apple-darwin/release/bundle/ || echo "Bundle directory not found"
120-
121- if [ -d "src-tauri/target/aarch64-apple-darwin/release/bundle/macos" ]; then
122- echo "π macOS bundle contents:"
123- ls -la src-tauri/target/aarch64-apple-darwin/release/bundle/macos/
124- fi
0 commit comments