diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 9bcaff6..64a0aea 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -57,3 +57,46 @@ jobs: working-directory: src-tauri continue-on-error: true run: cargo clippy --all-targets + + # Instalador de PRUEBA para Windows. Queda colgado de la ejecución como artifact y no + # toca Releases ni el updater: sirve para VER el cambio funcionando antes de publicárselo + # a todo el equipo, que es irreversible en la práctica (las apps se actualizan solas). + instalador-prueba: + runs-on: windows-latest + steps: + - name: Clonar repo + uses: actions/checkout@v4 + + - name: Instalar Node + uses: actions/setup-node@v4 + with: + node-version: 20 + + - name: Instalar Rust + uses: dtolnay/rust-toolchain@stable + + - name: Cache de Rust + uses: swatinem/rust-cache@v2 + with: + workspaces: src-tauri + + - name: Instalar dependencias + run: npm install + + - name: Generar iconos (desde app-icon.png) + run: npm run icons + + # La firma hace falta porque tauri.conf.json pide artefactos de updater; el .exe se + # queda igualmente aquí, sin publicarse en ningún sitio. + - name: Construir el instalador (NSIS) + env: + TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }} + TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }} + run: npm run tauri build -- --bundles nsis + + - name: Guardar el instalador como artifact + uses: actions/upload-artifact@v4 + with: + name: instalador-windows-prueba + path: src-tauri/target/release/bundle/nsis/*.exe + retention-days: 14