Phase 3: Full formatting pipeline + WASM plugin verified #1
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: CI | |
| on: | |
| push: | |
| branches: [master] | |
| tags: ["v*"] | |
| pull_request: | |
| branches: [master] | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo test | |
| build-wasm: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: wasm32-unknown-unknown | |
| - uses: Swatinem/rust-cache@v2 | |
| - name: Install wasi-sdk | |
| run: | | |
| curl -fsSL https://github.com/aspect-build/aspect-gcc-toolchain/releases/download/wasi-sdk-21/wasi-sdk-21.0-linux.tar.gz \ | |
| -o wasi-sdk.tar.gz | |
| tar xzf wasi-sdk.tar.gz | |
| echo "WASI_SDK_PATH=$PWD/wasi-sdk-21.0" >> "$GITHUB_ENV" | |
| echo "CC_wasm32_unknown_unknown=$PWD/wasi-sdk-21.0/bin/clang" >> "$GITHUB_ENV" | |
| - name: Build WASM | |
| run: cargo build --release --target wasm32-unknown-unknown --features wasm | |
| - name: Upload WASM artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: plugin.wasm | |
| path: target/wasm32-unknown-unknown/release/dprint_plugin_java.wasm | |
| release: | |
| needs: [test, build-wasm] | |
| if: startsWith(github.ref, 'refs/tags/v') | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: plugin.wasm | |
| - name: Create GitHub Release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: dprint_plugin_java.wasm | |
| generate_release_notes: true |