Skip to content

2.0 preparations

2.0 preparations #1122

Workflow file for this run

name: "Blaze-Persistence CI"
on: [push, pull_request]
env:
MAVEN_SKIP_RC: true
# See https://github.com/hibernate/hibernate-orm/pull/4615 for a description of the behavior we're getting.
concurrency:
# Consider that two builds are in the same concurrency group (cannot run concurrently)
# if they use the same workflow and are about the same branch ("ref") or pull request.
group: "workflow = ${{ github.workflow }}, ref = ${{ github.event.ref }}, pr = ${{ github.event.pull_request.id }}"
# Cancel previous builds in the same concurrency group even if they are in process
# for pull requests or pushes to forks (not the upstream repository).
cancel-in-progress: ${{ github.event_name == 'pull_request' || github.repository != 'Blazebit/blaze-persistence' }}
jobs:
build:
name: Test
runs-on: ubuntu-latest
# We want to know the test results of all matrix entries
continue-on-error: true
strategy:
fail-fast: false
matrix:
include:
################################################
# hibernate-6.6
################################################
- rdbms: h2
provider: hibernate-6.6
jdk: 17
native: true
- rdbms: mysql
provider: hibernate-6.6
jdk: 17
native: true
- rdbms: postgresql
provider: hibernate-6.6
jdk: 17
native: true
- rdbms: oracle
provider: hibernate-6.6
jdk: 17
# native: true
- rdbms: db2
provider: hibernate-6.6
jdk: 17
# native: true
- rdbms: mssql
provider: hibernate-6.6
jdk: 17
native: true
################################################
# Test different spring-data and deltaspike versions
################################################
- rdbms: h2
provider: hibernate-6.6
jdk: 17
spring-data: spring-data-3.3.x
################################################
# A Hibernate 6.6 profile that also runs the entity-view-annotation-processor
################################################
- rdbms: postgresql
provider: hibernate-apt
jdk: 17
################################################
# eclipselink
################################################
- rdbms: h2
provider: eclipselink
jdk: 17
################################################
# hibernate-6.2
################################################
- rdbms: h2
provider: hibernate-6.2
jdk: 17
spring-data: spring-data-3.1.x
################################################
# hibernate-6.4
################################################
- rdbms: h2
provider: hibernate-6.4
jdk: 17
spring-data: spring-data-3.2.x
################################################
# LTS JDKs
################################################
- rdbms: h2
provider: hibernate-6.6
jdk: 17
build-jdk: 17
################################################
# Latest GA JDK
################################################
- rdbms: h2
provider: hibernate-6.6
jdk: 21
- rdbms: h2
provider: hibernate-6.6
jdk: 21
build-jdk: 21
################################################
# Early access JDKs
################################################
# - rdbms: h2
# provider: hibernate-6.6
# jdk: 22-ea
# - rdbms: h2
# provider: hibernate-6.6
# jdk: 22-ea
# build-jdk: 22-ea
steps:
- uses: actions/checkout@v2
- name: Update /etc/hosts file
# /etc/hosts file needs to be updated as a workaround for
# https://github.com/actions/virtual-environments/issues/3185
run: echo -e "$(ip addr show eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)\t$(hostname -f) $(hostname -s)" | sudo tee -a /etc/hosts
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
- uses: graalvm/setup-graalvm@v1
if: ${{ matrix.native }}
with:
java-version: '17'
distribution: 'mandrel'
- name: Set up Requested JDK
uses: actions/setup-java@v3
if: ${{ !endsWith(matrix.jdk, '-ea') && matrix.jdk != '21' }}
with:
java-version: ${{ matrix.jdk }}
distribution: 'temurin'
- name: Set up EA JDK
uses: actions/setup-java@v3
if: ${{ endsWith(matrix.jdk, '-ea') || matrix.jdk == '21' }}
with:
java-version: ${{ matrix.jdk }}
distribution: 'zulu'
- name: Get year/month for cache key
id: get-date
run: |
echo "::set-output name=yearmonth::$(/bin/date -u "+%Y-%m")"
shell: bash
- name: Cache Maven local repository
uses: actions/cache@v2
id: cache-maven
with:
path: |
~/.m2/repository
# refresh cache every month to avoid unlimited growth
key: maven-localrepo-${{ steps.get-date.outputs.yearmonth }}
- name: Set up Maven
run: ./mvnw -v
- name: Run build script
env:
RDBMS: ${{ matrix.rdbms }}
JPAPROVIDER: ${{ matrix.provider }}
JDK: ${{ matrix.jdk }}
BUILD_JDK: ${{ matrix.build-jdk }}
NATIVE: ${{ matrix.native }}
DELTASPIKE: ${{ matrix.deltaspike }}
SPRING_DATA: ${{ matrix.spring-data }}
run: ./ci/build-github.sh
shell: bash
- name: Upload test reports (if Maven failed)
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-reports-${{ matrix.provider }}-${{ matrix.rdbms }}-jdk${{ matrix.jdk }}-build-jdk${{ matrix.build-jdk }}-${{ matrix.spring-data }}
path: './**/*-reports/'
- name: Omit produced artifacts from build cache
run: ./ci/before-cache.sh