33 java8 #30
Workflow file for this run
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 | |
pull_request: | |
branches: | |
- master | |
jobs: | |
style_check: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: 17 | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.m2/repository | |
key: style_check_maven | |
- name: Check Format | |
run: ./mvnw editorconfig:check | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: 17 | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.m2/repository | |
key: build_maven | |
- name: Build | |
run: ./mvnw install -DskipTests -e | |
- name: Upload generated sources | |
uses: actions/upload-artifact@v4 | |
with: | |
name: generated-sources | |
path: | | |
it/java17/target/generated-sources | |
if-no-files-found: error | |
- name: Upload jars | |
uses: actions/upload-artifact@v4 | |
with: | |
name: jars | |
path: | | |
~/.m2/repository/org/sharedtype | |
if-no-files-found: error | |
- name: Remove jars from cache | |
run: rm -rf ~/.m2/repository/org/sharedtype | |
- name: Upload classes | |
uses: actions/upload-artifact@v4 | |
with: | |
name: classes | |
path: | | |
annotations/target/classes | |
processor/target/classes | |
internal/target/classes | |
it/shared/target/classes | |
it/java17/target/classes | |
it/java8/target/classes | |
if-no-files-found: error | |
test_new_java: | |
needs: [build] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
java: [ 17, 21 ] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.java }} | |
- uses: actions/download-artifact@v4 | |
with: | |
name: classes | |
- name: Display downloaded artifact | |
run: | | |
ls -lhR . | |
ls -lhR processor/target/classes | |
ls -lhR internal/target/classes | |
ls -lhR it/shared/target/classes | |
ls -lhR it/java17/target/classes | |
ls -lhR it/java8/target/classes | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.m2/repository | |
key: build_maven | |
- name: Test | |
run: ./mvnw test -e | |
test_old_java: | |
needs: [build] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
java: [ 8, 11 ] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.java }} | |
- uses: actions/download-artifact@v4 | |
with: | |
name: jars | |
- name: Display downloaded artifact | |
run: ls -lhR ~/.m2/repository/org/sharedtype | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.m2/repository | |
key: build_maven | |
- name: Test | |
run: ../../mvnw test -e | |
working-directory: it/java8 | |
client_test: | |
needs: [build] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- uses: actions/download-artifact@v4 | |
with: | |
name: generated-sources | |
path: it/java17/target/generated-sources | |
- name: Display downloaded artifact | |
run: ls -lhR it/java17/target/generated-sources | |
- name: Test Typescript | |
working-directory: client-test/typescript | |
run: | | |
npm i | |
npm run test | |
clean-artifact: | |
needs: [ test_new_java, test_old_java, client_test ] | |
runs-on: ubuntu-latest | |
if: always() | |
steps: | |
- uses: geekyeggo/delete-artifact@v5 | |
with: | |
name: dist |