build(deps): update wasmtime requirement from 38.0.3 to 39.0.0 (#166) #81
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: Build & Test | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| types: [opened, ready_for_review, synchronize, reopened] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| build-and-test: | |
| if: github.event.pull_request.draft == false | |
| name: Build & Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v4 | |
| - name: Extract short SHA | |
| id: vars | |
| run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT | |
| - name: Setup Rust Toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| toolchain: nightly | |
| - name: Setup Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: "temurin" | |
| java-version: "21" | |
| - name: Cache Cargo registry | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-registry- | |
| - name: Cache Cargo build | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| target | |
| key: ${{ runner.os }}-cargo-build-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-build- | |
| - name: Cache Gradle Dependencies | |
| id: cache-gradle | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.gradle/caches | |
| ~/.gradle/wrapper | |
| key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/gradle-wrapper.jar') }} | |
| restore-keys: | | |
| gradle-${{ runner.os }}- | |
| - name: Install Protobuf Compiler | |
| run: sudo apt update && sudo apt install protobuf-compiler -y | |
| - name: Run Clippy | |
| run: cargo clippy --all-features -- -D warnings | |
| - name: Build Projects | |
| run: cargo build --all --all-features | |
| env: | |
| CURRENT_COMMIT: ${{ steps.vars.outputs.sha_short }} | |
| CURRENT_BUILD: ${{ github.run_number }} | |
| - name: Run Tests | |
| run: cargo test --workspace --exclude pelican --exclude local --exclude cloudflare --all-features | |
| - name: Build & Test Java Client | |
| working-directory: clients/java | |
| run: | | |
| chmod +x gradlew | |
| ./gradlew build --no-daemon | |
| env: | |
| CURRENT_COMMIT: ${{ steps.vars.outputs.sha_short }} | |
| CURRENT_BUILD: ${{ github.run_number }} |