[PR109] Example repo update #277
Workflow file for this run
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-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@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jvm-version }} | |
# When adding a new example make sure it's listed here | |
- name: Test Java Gradle Template | |
uses: gradle/gradle-build-action@v2 | |
with: | |
arguments: check | |
build-root-directory: templates/java-gradle | |
- name: Test java/food-ordering | |
uses: gradle/gradle-build-action@v2 | |
with: | |
arguments: check | |
build-root-directory: end-to-end-applications/java/food-ordering/app | |
- name: Test java/patterns/sagas | |
uses: gradle/gradle-build-action@v2 | |
with: | |
arguments: check | |
build-root-directory: patterns-use-cases/sagas/sagas-java | |
- name: Test java/tour-of-restate | |
uses: gradle/gradle-build-action@v2 | |
with: | |
arguments: check | |
build-root-directory: tutorials/tour-of-restate-java | |
- name: Test Kotlin Template | |
uses: gradle/gradle-build-action@v2 | |
with: | |
arguments: check | |
build-root-directory: templates/kotlin-gradle | |
- name: Build Scala Template | |
run: sbt -v +package | |
working-directory: templates/scala-sbt | |
build-ts: | |
# prevent from running on forks | |
if: github.repository_owner == 'restatedev' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [19.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' | |
# to avoid using workspaces, which couples the examples together and makes them harder | |
# to use independently, we list them here individually | |
# basics | |
- run: npm i --prefix basics/basics-typescript && npm --prefix basics/basics-typescript run build | |
# templates | |
- run: npm i --prefix templates/typescript && npm --prefix templates/typescript run build | |
# tutorials | |
- run: npm i --prefix tutorials/tour-of-restate-typescript && npm --prefix tutorials/tour-of-restate-typescript run build | |
# patterns | |
- run: npm i --prefix patterns-use-cases/async-signals-payment/async-signals-payment-typescript && npm --prefix patterns-use-cases/async-signals-payment/async-signals-payment-typescript run build | |
- run: npm i --prefix patterns-use-cases/durable-promises/durable-promises-typescript && npm --prefix patterns-use-cases/durable-promises/durable-promises-typescript run build | |
- run: npm i --prefix patterns-use-cases/payment-state-machine/payment-state-machine-typescript && npm --prefix patterns-use-cases/payment-state-machine/payment-state-machine-typescript run build | |
- run: npm i --prefix patterns-use-cases/sagas/sagas-typescript && npm --prefix patterns-use-cases/sagas/sagas-typescript run build | |
- run: npm i --prefix patterns-use-cases/state-machines/state-machines-typescript && npm --prefix patterns-use-cases/state-machines/state-machines-typescript run build | |
- run: npm i --prefix patterns-use-cases/ticket-reservation/ticket-reservation-typescript && npm --prefix patterns-use-cases/ticket-reservation/ticket-reservation-typescript run build | |
# e2e apps | |
- run: npm i --prefix end-to-end-applications/typescript/ai-image-workflows && npm --prefix end-to-end-applications/typescript/ai-image-workflows run build | |
- run: npm i --prefix end-to-end-applications/typescript/ecommerce-store/services && npm --prefix end-to-end-applications/typescript/ecommerce-store/services run proto && npm --prefix end-to-end-applications/typescript/ecommerce-store/services run build | |
- run: npm i --prefix end-to-end-applications/typescript/food-ordering/app && npm --prefix end-to-end-applications/typescript/food-ordering/app run build |