Fix remaining emoji in GitHub Actions - remove character #16
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: Release DevStackBox | |
| on: | |
| push: | |
| tags: | |
| - 'v*' | |
| workflow_dispatch: | |
| jobs: | |
| create-release: | |
| permissions: | |
| contents: write | |
| runs-on: ubuntu-22.04 | |
| outputs: | |
| release_id: ${{ steps.create-release.outputs.result }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Create release | |
| id: create-release | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| const { data } = await github.rest.repos.createRelease({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| tag_name: `${context.ref.replace(/refs\/tags\//, '')}`, | |
| name: `DevStackBox ${context.ref.replace(/refs\/tags\//, '')} - Apache 64-bit + Auto-Update`, | |
| body: `**DevStackBox v${context.ref.replace(/refs\/tags\//, '')}** | |
| **Major Fixes in This Release:** | |
| - **64-bit Apache** - Fixed "Unsupported 16-Bit Application" error | |
| - **Dynamic Configuration** - MSI installer now works with correct paths | |
| - **Enhanced Auto-Updater** - Improved update detection and installation | |
| - **Architecture Detection** - Better error messages for compatibility issues | |
| **What's Included:** | |
| - **Apache 2.4.65 (64-bit)** - Compatible with 64-bit Windows | |
| - **MySQL 8.0 Database** (embedded) | |
| - **PHP 8.2** (with extensions) | |
| - **phpMyAdmin** (database management) | |
| - **Modern React UI** (dark/light mode) | |
| - **Auto-Updates** via GitHub Releases | |
| **Installation:** | |
| 1. Download the NSIS installer (DevStackBox_*_x64-setup.exe) | |
| 2. Run as administrator | |
| 3. Install to C:\\\\dsb\\\\ (recommended) or custom location | |
| 4. Launch DevStackBox from Start Menu | |
| 5. Start Apache/MySQL services from the UI | |
| 6. Access http://localhost for your projects | |
| 7. Access http://localhost/phpmyadmin for database management | |
| **Auto-Update Testing:** | |
| - Install this version to test auto-update functionality | |
| - Updates check every 2 hours in this alpha version | |
| - Manual update check available via "Check Updates" button | |
| **Troubleshooting:** | |
| - If Apache won't start, use the "Debug Installation" feature | |
| - All paths are now dynamically resolved based on installation directory | |
| - Architecture compatibility is automatically checked | |
| **Note:** This is an alpha release for testing. Please report any issues on GitHub.`, | |
| draft: true, | |
| prerelease: true | |
| }); | |
| return data.id; | |
| build-tauri: | |
| needs: create-release | |
| permissions: | |
| contents: write | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - platform: 'windows-latest' | |
| args: '--target x86_64-pc-windows-msvc' | |
| runs-on: ${{ matrix.platform }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Rust setup | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Rust cache | |
| uses: swatinem/rust-cache@v2 | |
| with: | |
| workspaces: './src-tauri -> target' | |
| - name: Sync node version and setup cache | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 'lts/*' | |
| cache: 'npm' | |
| - name: Install frontend dependencies | |
| run: npm install | |
| - name: Prepare server binaries for bundling | |
| run: npm run prepare-binaries | |
| shell: powershell | |
| - name: Verify server components are ready | |
| run: | | |
| Write-Host "Verifying server components in src-tauri..." -ForegroundColor Cyan | |
| $components = @("apache", "mysql", "php", "phpmyadmin", "www", "config") | |
| foreach ($component in $components) { | |
| $path = "src-tauri/$component" | |
| if (Test-Path $path) { | |
| $size = (Get-ChildItem -Path $path -Recurse | Measure-Object -Property Length -Sum).Sum | |
| $sizeMB = [math]::Round($size/1MB, 2) | |
| Write-Host "SUCCESS $component : $sizeMB MB" -ForegroundColor Green | |
| } else { | |
| Write-Host "MISSING $component : Not found" -ForegroundColor Red | |
| } | |
| } | |
| Write-Host "Ready for Tauri build" -ForegroundColor Blue | |
| shell: powershell | |
| - name: Build the app | |
| uses: tauri-apps/tauri-action@v0 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} | |
| TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} | |
| with: | |
| releaseId: ${{ needs.create-release.outputs.release_id }} | |
| args: ${{ matrix.args }} | |
| publish-release: | |
| permissions: | |
| contents: write | |
| runs-on: ubuntu-22.04 | |
| needs: [create-release, build-tauri] | |
| steps: | |
| - name: Publish release | |
| id: publish-release | |
| uses: actions/github-script@v7 | |
| env: | |
| release_id: ${{ needs.create-release.outputs.release_id }} | |
| with: | |
| script: | | |
| await github.rest.repos.updateRelease({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| release_id: process.env.release_id, | |
| draft: false, | |
| prerelease: true | |
| }); |