Skip to content

vertx-vaadin nightly validation #254

vertx-vaadin nightly validation

vertx-vaadin nightly validation #254

name: vertx-vaadin nightly validation
on:
workflow_dispatch:
schedule:
- cron: '0 4 * * *'
env:
JAVA_VERSION: 17
jobs:
build:
name: Build and test
strategy:
fail-fast: false
matrix:
java: [21, 17]
branch: [ development, vaadin-24.3, vaadin-23 ]
include:
- branch: vaadin-23
java: 11
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ matrix.branch }}
- name: Set up Java
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
cache: maven
- uses: browser-actions/setup-chrome@latest
id: setup-chrome
if: ${{ !vars.QH_DISABLE_CHROME_INSTALL }}
with:
chrome-version: stable
- name: Build
run: |
set -x -e -o pipefail
mvn -V -e -B -ntp -DskipTests -DskipVertxRun=true install -Pflow-ui-tests
- name: Test
env:
VAADIN_PRO_KEY: ${{ secrets.VAADIN_PRO_KEY }}
run: |
set -x -e -o pipefail
mvn -V -e -B -ntp verify -Dmaven.javadoc.skip=false -DtrimStackTrace=false
- name: UI Test 1
env:
VAADIN_PRO_KEY: ${{ secrets.VAADIN_PRO_KEY }}
run: |
set -x -e -o pipefail
cd $GITHUB_WORKSPACE/vertx-vaadin-tests
rm -rf frontend/generated
mvn -V -e -B -ntp verify -Dmaven.javadoc.skip=false -pl=:vertx-vaadin-test-root-context -DtrimStackTrace=false \
-Dwebdriver.chrome.driver=$(which chromedriver) \
-Duitest.chrome-version=$CHROME_VERSION
- name: UI Test 2
env:
VAADIN_PRO_KEY: ${{ secrets.VAADIN_PRO_KEY }}
run: |
set -x -e -o pipefail
cd $GITHUB_WORKSPACE/vertx-vaadin-tests/
mvn -V -e -B -ntp verify -DtrimStackTrace=false -pl=-:vertx-vaadin-test-root-context -Dwebdriver.chrome.driver=$(which chromedriver)
- name: Package test output files
if: ${{ failure() || success() }}
run: find . -name surefire-reports -o -name failsafe-reports -o -name error-screenshots -o -name verticle.log | tar -czf tests-report-${{ matrix.branch }}-JVM-${{ matrix.java }}.tgz -T -
- uses: actions/upload-artifact@v4
if: ${{ failure() || success() }}
with:
name: tests-output-${{ matrix.branch }}-JVM-${{ matrix.java }}
path: tests-report-*.tgz
- name: Publish Unit Test Results
if: ${{ failure() || success() }}
uses: EnricoMi/publish-unit-test-result-action@v2
with:
junit_files: "**/target/*-reports/TEST*.xml"