Skip to content

use Compose V2

use Compose V2 #863

# This workflow will build a Java project with Maven
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
name: CI acceptance tests
on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/main' }}
jobs:
mvn-acceptance:
runs-on: [ubuntu-latest]
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
jdk: ['17', '21']
distribution: ['temurin']
experimental: [false]
include:
- jdk: '22'
distribution: 'zulu'
experimental: true
continue-on-error: ${{ matrix.experimental }}
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v4
with:
distribution: ${{ matrix.distribution }}
java-version: ${{ matrix.jdk }}
- uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-
- name: Build with Maven
run: mvn -B -Pacceptance verify --file src/pom.xml
- name: Allow failures
run: 'true'
docker-compose-e2e:
runs-on: [ubuntu-latest]
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
# jdk: ['11']
# distribution: ['temurin', 'corretto', 'microsoft', 'adopt-openj9', 'zulu']
# experimental: [false]
include:
- jdk: '17'
distribution: 'zulu'
experimental: false
# - jdk: '19'
# distribution: 'zulu'
# experimental: true
continue-on-error: ${{ matrix.experimental }}
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v4
with:
distribution: ${{ matrix.distribution }}
java-version: ${{ matrix.jdk }}
- uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-
# - name: Set up Docker
# uses: docker/setup-docker@v2
- name: Build with Maven
run: mvn -B package --file src/pom.xml
- name: Build and Start Docker Compose
working-directory: src/
run: |
docker compose build
docker compose up -d
- name: Wait for Services to Start
run: sleep 30 # Adjust as needed
- name: Test RM SPC endpoint with curl
run: curl -fsSL --user "admin:admin" http://localhost:8800/services/catalog/singleton
continue-on-error: true # Continue even if curl command fails
- name: Tear down Docker Compose
working-directory: src/
run: docker compose down
docker-compose-e2e-tomcat:
runs-on: [ubuntu-latest]
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
# jdk: ['11']
# distribution: ['temurin', 'corretto', 'microsoft', 'adopt-openj9', 'zulu']
# experimental: [false]
include:
- jdk: '17'
distribution: 'zulu'
experimental: false
# - jdk: '19'
# distribution: 'zulu'
# experimental: true
continue-on-error: ${{ matrix.experimental }}
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v4
with:
distribution: ${{ matrix.distribution }}
java-version: ${{ matrix.jdk }}
- uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-${{ matrix.jdk }}_${{ matrix.distribution }}-maven-
# - name: Set up Docker
# uses: docker/setup-docker@v2
- name: Build with Maven
run: mvn -B package --file src/pom.xml -Pwith-jstl-impl
- name: Build and Start Docker Compose
working-directory: src/
run: |
docker compose -f docker-compose.tomcat.yml build
docker compose -f docker-compose.tomcat.yml up -d
- name: Wait for Services to Start
run: sleep 30 # Adjust as needed
- name: Test RM SPC endpoint with curl
run: curl -fsSL --user "admin:admin" http://localhost:8800/services/catalog/singleton
- name: Tear down Docker Compose
working-directory: src/
run: docker compose -f docker-compose.tomcat.yml down