Skip to content

Expand Hibernate 7 functional coverage and query parity #3035

Expand Hibernate 7 functional coverage and query parity

Expand Hibernate 7 functional coverage and query parity #3035

Workflow file for this run

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: "Code Style"
on:
push:
branches:
- '[0-9]+.[0-9]+.x'
- '8.0.x-hibernate7.*'
pull_request:
workflow_dispatch:
# queue jobs and only allow 1 run per branch due to the likelihood of hitting GitHub resource limits
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
check_core_projects:
name: "Core Projects"
runs-on: ubuntu-24.04
steps:
- name: "🌐 Output Agent IP" # in the event RAO blocks this agent, this can be used to debug it
run: curl -s https://api.ipify.org
- name: "πŸ“₯ Checkout repository"
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: "β˜•οΈ Setup JDK"
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: liberica
java-version: 21
- name: "🐘 Setup Gradle"
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with:
cache-provider: basic # 'basic' uses the MIT-licensed, open-source cache provider; the default 'enhanced' provider (v6+) is proprietary (Gradle commercial Terms of Use)
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- name: "πŸ”Ž Check Core Projects"
run: ./gradlew aggregateStyleViolations --continue
- name: "πŸ“€ Upload Reports"
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: core-reports
path: build/reports/violations/
- name: "πŸ“‹ Publish Code Style Report in Job Summary"
if: always()
run: |
echo "## πŸ”Ž Code Style Report - Core Projects" >> $GITHUB_STEP_SUMMARY
for report in CODENARC_VIOLATIONS.md CHECKSTYLE_VIOLATIONS.md; do
file="build/reports/violations/$report"
[ -f "$file" ] && cat "$file" >> $GITHUB_STEP_SUMMARY || true
done
check_forge_projects:
name: "Forge Projects"
runs-on: ubuntu-24.04
steps:
- name: "🌐 Output Agent IP" # in the event RAO blocks this agent, this can be used to debug it
run: curl -s https://api.ipify.org
- name: "πŸ“₯ Checkout repository"
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: "β˜•οΈ Setup JDK"
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: liberica
java-version: 21
- name: "🐘 Setup Gradle"
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with:
cache-provider: basic # 'basic' uses the MIT-licensed, open-source cache provider; the default 'enhanced' provider (v6+) is proprietary (Gradle commercial Terms of Use)
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- name: "πŸ”Ž Check Forge Projects"
working-directory: grails-forge
run: ./gradlew codeStyle
- name: "πŸ“€ Upload Failure Reports"
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: forge-reports
path: grails-forge/build/reports/code-style/
- name: "πŸ“‹ Publish Code Style Report in Job Summary"
if: always()
run: |
echo "## πŸ”Ž Code Style Report - Forge Projects" >> $GITHUB_STEP_SUMMARY
for file in grails-forge/build/reports/code-style/checkstyle/*.xml grails-forge/build/reports/code-style/codenarc/*.xml; do
[ -f "$file" ] || continue
if grep -q "<error " "$file" || grep -q "<Violation " "$file"; then
echo "### ❌ $(basename "$file" .xml)" >> $GITHUB_STEP_SUMMARY
grep "<error " "$file" | awk -F'"' '{print "- **Line " $2 "**: " $8}' >> $GITHUB_STEP_SUMMARY
grep "<Violation " "$file" | awk -F"'" '{print "- **Line " $6 "**: " $2}' >> $GITHUB_STEP_SUMMARY
fi
done
check_gradle_plugin_projects:
name: "Gradle Plugin Projects"
runs-on: ubuntu-24.04
steps:
- name: "🌐 Output Agent IP" # in the event RAO blocks this agent, this can be used to debug it
run: curl -s https://api.ipify.org
- name: "πŸ“₯ Checkout repository"
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: "β˜•οΈ Setup JDK"
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: liberica
java-version: 21
- name: "🐘 Setup Gradle"
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with:
cache-provider: basic # 'basic' uses the MIT-licensed, open-source cache provider; the default 'enhanced' provider (v6+) is proprietary (Gradle commercial Terms of Use)
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- name: "πŸ”Ž Check Gradle Plugin Projects"
working-directory: grails-gradle
run: ./gradlew aggregateStyleViolations --continue
- name: "πŸ“€ Upload Reports"
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: gradle-plugin-reports
path: grails-gradle/build/reports/violations/
- name: "πŸ“‹ Publish Code Style Report in Job Summary"
if: always()
run: |
echo "## πŸ”Ž Code Style Report - Gradle Plugin Projects" >> $GITHUB_STEP_SUMMARY
for report in CODENARC_VIOLATIONS.md CHECKSTYLE_VIOLATIONS.md; do
file="grails-gradle/build/reports/violations/$report"
[ -f "$file" ] && cat "$file" >> $GITHUB_STEP_SUMMARY || true
done