chore: version 1.2024.8 #241
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: Tests | |
on: | |
- push | |
- pull_request | |
jobs: | |
test-java-8-war-generation: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: 8 | |
check-latest: true | |
cache: "maven" | |
- name: Remove test code (not java 8 compatible) | |
run: rm -rf src/test | |
- name: Generate war file (including apache-jsp artifact) | |
run: mvn --batch-mode -f pom.jdk8.xml -D java.net.useSystemProxies=true -Dapache-jsp.scope=compile clean package | |
- name: Generate war file | |
run: mvn --batch-mode -f pom.jdk8.xml -D java.net.useSystemProxies=true clean package | |
- name: temporarily save generated files | |
uses: actions/upload-artifact@v3 | |
with: | |
name: war-jre8 | |
path: target/plantuml.war | |
retention-days: 1 | |
test-java-8-war: | |
runs-on: ubuntu-latest | |
needs: test-java-8-war-generation | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: retrieve generated files (jre8) | |
uses: actions/download-artifact@v3 | |
with: | |
name: war-jre8 | |
path: artifacts | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Prepare jetty-runner tests | |
run: mvn --batch-mode clean package | |
- name: Start jetty server over jetty-runner | |
run: java -jar target/dependency/jetty-runner.jar --config src/main/config/jetty.xml --path /plantuml artifacts/plantuml.war & | |
- name: Wait 5 seconds (to let jetty-runner start the jetty server) | |
run: sleep 5s | |
- name: Run tests against "mvn jetty:run" server | |
run: mvn --batch-mode test -DskipTests=false -Dgroups=\!graphviz-test -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml" | |
test-mvn-livecycle: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Lifecycle - Step 1/8 - mvn clean | |
run: mvn --batch-mode clean | |
- name: Lifecycle - Step 2/8 - mvn validate | |
run: mvn --batch-mode validate | |
- name: Lifecycle - Step 3/8 - mvn compile | |
run: mvn --batch-mode compile | |
- name: Lifecycle - Step 4/8 - mvn test (with skipTests=true) | |
run: mvn --batch-mode test | |
- name: Lifecycle - Step 5/8 - mvn package | |
run: mvn --batch-mode package | |
- name: Lifecycle - Step 6/8 - mvn verify | |
run: mvn --batch-mode verify | |
- name: Lifecycle - Step 7/8 - mvn install | |
run: mvn --batch-mode install | |
- name: Lifecycle - Step 8/8 - mvn site | |
run: mvn --batch-mode site | |
test-embedded: | |
runs-on: ubuntu-latest | |
needs: test-mvn-livecycle | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Run tests against jetty embedded server | |
run: mvn --batch-mode clean test -DskipTests=false -Dgroups=\!graphviz-test | |
test-mvn-jetty-run: | |
runs-on: ubuntu-latest | |
needs: test-mvn-livecycle | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Prepare "mvn jetty:run" tests | |
run: mvn --batch-mode clean test | |
- name: Start jetty server over maven | |
run: mvn --batch-mode jetty:run & | |
- name: Wait 20 seconds (to let maven start the jetty server) | |
run: sleep 20s | |
- name: Run tests against "mvn jetty:run" server | |
run: mvn --batch-mode test -DskipTests=false -Dgroups=\!graphviz-test -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml" | |
test-jetty-runner: | |
runs-on: ubuntu-latest | |
needs: test-mvn-livecycle | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Prepare jetty-runner tests | |
run: mvn --batch-mode clean package | |
- name: Start jetty server over jetty-runner | |
run: java -jar target/dependency/jetty-runner.jar --config src/main/config/jetty.xml --path /plantuml target/plantuml.war & | |
- name: Wait 5 seconds (to let jetty-runner start the jetty server) | |
run: sleep 5s | |
- name: Run tests against "mvn jetty:run" server | |
run: mvn --batch-mode test -DskipTests=false -Dgroups=\!graphviz-test -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml" | |
test-jetty: | |
runs-on: ubuntu-latest | |
needs: test-mvn-livecycle | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Prepare external tests | |
run: mvn --batch-mode clean test | |
- name: Build the jetty docker stack | |
run: | | |
docker image build -f Dockerfile.jetty -t plantuml-server:local . | |
docker run -d --hostname=test.localhost -p 8080:8080 -e BASE_URL=plantuml plantuml-server:local | |
- name: Check running containers | |
run: docker ps | |
- name: run tests against jetty docker image | |
run: mvn --batch-mode test -DskipTests=false -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml" | |
test-tomcat: | |
runs-on: ubuntu-latest | |
needs: test-mvn-livecycle | |
strategy: | |
matrix: | |
java-version: [ 11, 17 ] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: ${{ matrix.java-version }} | |
check-latest: true | |
cache: "maven" | |
- name: Prepare external tests | |
run: mvn --batch-mode clean test | |
- name: Build the tomcat docker stack | |
run: | | |
docker image build -f Dockerfile.tomcat -t plantuml-server:local . | |
docker run -d --hostname=test.localhost -p 8080:8080 -e BASE_URL=plantuml plantuml-server:local | |
- name: Check running containers | |
run: docker ps | |
- name: run tests against tomcat docker image | |
run: mvn --batch-mode test -DskipTests=false -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml" |