Skip to content

Migrate to 7.26.0.Final #1472

Migrate to 7.26.0.Final

Migrate to 7.26.0.Final #1472

Workflow file for this run

name: Build with Integration Tests
on:
push:
branches: [ "main" ]
paths-ignore: [ ".gitignore", "CODEOWNERS", "LICENSE", "**.md", "**.adoc", "**.txt", ".all-contributorsrc", ".github/project.yml", ".claude/**" ]
pull_request:
paths-ignore: [ ".gitignore", "CODEOWNERS", "LICENSE", "**.md", "**.adoc", "**.txt", ".all-contributorsrc", ".claude/**" ]
permissions:
contents: read
checks: write
pull-requests: write
env:
QUARKUS_LANGCHAIN4J_OLLAMA_CHAT_MODEL_MODEL_ID: llama3.2
# RestAssured socket timeout for slow GHA runners (in milliseconds)
RESTASSURED_TIMEOUT_MS: 60000
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
defaults:
run:
shell: bash
jobs:
build:
name: Build & test (${{ matrix.os }} / JDK ${{ matrix.java-version }})
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest ]
java-version: [ 25 ]
steps:
- uses: actions/checkout@v7
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: ${{ matrix.java-version }}
cache: maven
- name: Setup Ollama
uses: ai-action/setup-ollama@v2
- uses: actions/cache@v6
with:
path: ~/.ollama
key: ${{ runner.os }}-ollama
- name: Run ${{ env.QUARKUS_LANGCHAIN4J_OLLAMA_CHAT_MODEL_MODEL_ID }} model
run: ollama run ${{ env.QUARKUS_LANGCHAIN4J_OLLAMA_CHAT_MODEL_MODEL_ID }}
# Skip langchain4j/integration-tests as they run in persistence-langchain4j.yml workflow
# Skip docs and examples - examples ITs run in build.yml examples-it job
- name: Build with Maven (Linux, full tests including ITs, core only)
run: |
mvn clean install \
-Dquarkus.log.level=OFF \
-DskipITs=false \
-P!docs,code-coverage \
-Dquarkus.langchain4j.ollama.chat-model.model-id=${{ env.QUARKUS_LANGCHAIN4J_OLLAMA_CHAT_MODEL_MODEL_ID }} \
-Dquarkus.langchain4j.timeout=60000 \
-Drestassured.config.http.client.params.SO_TIMEOUT=${{ env.RESTASSURED_TIMEOUT_MS }} \
-ntp \
-pl '!langchain4j/integration-tests'
- name: Prepare build reports archive
if: always()
run: |
7z a -tzip build-reports.zip -r \
'**/target/*-reports/TEST-*.xml' \
'target/build-report.json' \
'LICENSE'
- name: Upload build reports
uses: actions/upload-artifact@v7
if: always()
with:
name: "build-reports-${{ github.run_attempt }}-${{ matrix.os }}-jdk-${{ matrix.java-version }}"
path: build-reports.zip
retention-days: 1
- name: Add Coverage Comment
uses: madrapps/jacoco-report@v1.8.0
if: always()
with:
paths: |
${{ github.workspace }}/**/target/jacoco-report/jacoco.xml
token: ${{ secrets.GITHUB_TOKEN }}
min-coverage-overall: 40
min-coverage-changed-files: 40
title: "📊 Quarkus Flow Coverage Report"
update-comment: true
build-report:
runs-on: ubuntu-latest
name: Build report
needs: [build]
if: always()
steps:
- uses: actions/download-artifact@v8
with:
path: build-reports-artifacts
pattern: build-reports-${{ github.run_attempt }}-*
merge-multiple: true
- name: Produce report and add it as job summary
uses: quarkusio/action-build-reporter@main
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
build-reports-artifacts-path: build-reports-artifacts