diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index 09c5790..5b5f05e 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -13,23 +13,31 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Install Rust toolchain - uses: dtolnay/rust-toolchain@stable + - name: Install Rust + shell: pwsh + run: | + # Install rustup using the official Windows installer + Invoke-WebRequest -Uri "https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe" -OutFile "rustup-init.exe" + .\rustup-init.exe -y --default-toolchain stable + # Add cargo to PATH for the rest of the session + echo "$HOME\.cargo\bin" | Out-File -FilePath $env:GITHUB_PATH -Append -Encoding utf8 - name: Install LLVM run: choco install llvm --no-progress - name: Build Client - working-directory: ./client - run: cargo build --release + shell: pwsh + run: | + cd client + cargo build --release - name: Prepare Binaries for Installer shell: pwsh run: | New-Item -ItemType Directory -Force -Path bin - Copy-Item "client/target/release/meshvpn-client.exe" "bin/client.exe" + Copy-Item "client\target\release\meshvpn-client.exe" "bin\client.exe" # Download Wintun.dll as it is a driver binary not stored in git - Invoke-WebRequest -Uri "https://github.com/WireGuard/wintun/releases/latest/download/wintun.dll" -OutFile "bin/wintun.dll" + Invoke-WebRequest -Uri "https://github.com/WireGuard/wintun/releases/latest/download/wintun.dll" -OutFile "bin\wintun.dll" - name: Install WiX Toolset run: choco install wixtoolset --no-progress @@ -39,8 +47,8 @@ jobs: run: | # candle.exe compiles .wxs to .wixobj # light.exe links .wixobj to .msi - candle.exe installer/product.wxs -o installer/product.wixobj - light.exe installer/product.wixobj -o meshvpn-client.msi + candle.exe installer\product.wxs -o installer\product.wixobj + light.exe installer\product.wixobj -o meshvpn-client.msi - name: Create Gitea Release uses: softprops/action-gh-release@v1