Batching example #511
This file contains 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 and test | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
jobs: | |
build-rust: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust toolchain | |
uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
components: clippy | |
rustflags: "" | |
- uses: Swatinem/rust-cache@v2 | |
- name: Run tests | |
run: ./.tools/run_rust_tests.sh | |
build-jvm: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
jvm-version: [ 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use JVM ${{ matrix.jvm-version }} | |
uses: actions/setup-java@v4 | |
with: | |
distribution: "temurin" | |
java-version: ${{ matrix.jvm-version }} | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v3 | |
- name: Run tests | |
run: ./.tools/run_jvm_tests.sh | |
build-node: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [20.x] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
registry-url: "https://registry.npmjs.org" | |
- name: Run tests | |
run: ./.tools/run_node_tests.sh | |
build-altjs: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
# We just need npm from Node | |
- name: Setup Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 20.x | |
- name: Setup Bun | |
uses: oven-sh/setup-bun@v1 | |
with: | |
bun-version: latest | |
- name: Setup Deno | |
uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.x | |
- name: Run tests | |
run: ./.tools/run_altjs_tests.sh | |
build-go: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
go-version: [1.22] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Go ${{ matrix.go-version }} | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ${{ matrix.go-version }} | |
- name: Run tests | |
run: ./.tools/run_go_tests.sh | |
build-py: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python: ["3.12"] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Run tests | |
run: ./.tools/run_python_tests.sh |