Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
186 changes: 159 additions & 27 deletions .github/workflows/build-main-branches.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,40 +12,172 @@ on:
jobs:
build:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.java.continue-on-error == true }}
strategy:
matrix:
java: [
{
'name': '',
'version': '17',
},
{
'name': '',
'version': '21',
},
{
'name': '',
'version': '25',
},
{
'version': '21',
'build_opts': '-Pslow-flaky-tests -Drevapi.skip=true -Dformat.skip=true',
'name': 'Slow and Flaky tests',
'continue-on-error': true
}
]
name: Build with Java ${{ matrix.java.version }} ${{ matrix.java.name }}
java:
- '17'
- '21'
- '25'
name: Build (Java ${{ matrix.java }})
steps:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java.version }}
java-version: ${{ matrix.java }}
distribution: temurin
cache: maven
- name: Build with Maven
env:
MAVEN_OPTS: ${{ matrix.java.opts }}
run: |
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon -B \
clean install -Dtest-containers=true ${{ matrix.java.build_opts }}
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon \
-B clean install -DskipTests -T1C
- name: Upload Maven Repository
uses: actions/upload-artifact@v7
with:
name: maven-repo-java-${{ matrix.java }}
path: ~/.m2/repository/io/smallrye/reactive/
retention-days: 1

core-tests:
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
java:
- '17'
- '21'
- '25'
name: Core Tests (Java ${{ matrix.java }})
steps:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: temurin
cache: maven
- name: Download Maven Repository
uses: actions/download-artifact@v8
with:
name: maven-repo-java-${{ matrix.java }}
path: ~/.m2/repository/io/smallrye/reactive/
- name: Run Core Tests
run: |
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon \
-B verify -Dtest-containers=true \
-Drevapi.skip=true -Dformat.skip=true \
-pl :smallrye-reactive-messaging-api,:smallrye-reactive-messaging-provider,:smallrye-reactive-messaging-otel,:smallrye-reactive-messaging-health,:smallrye-reactive-messaging-jackson,:smallrye-reactive-messaging-jsonb,:test-common,:smallrye-connector-attribute-processor,:smallrye-reactive-messaging-kafka-api,:smallrye-reactive-messaging-kafka-test-companion

kafka-tests:
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
java:
- '17'
- '21'
- '25'
name: Kafka Tests (Java ${{ matrix.java }})
steps:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: temurin
cache: maven
- name: Download Maven Repository
uses: actions/download-artifact@v8
with:
name: maven-repo-java-${{ matrix.java }}
path: ~/.m2/repository/io/smallrye/reactive/
- name: Run Kafka Tests
run: |
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon \
-B verify -Dtest-containers=true \
-Drevapi.skip=true -Dformat.skip=true \
-pl :smallrye-reactive-messaging-kafka

connector-tests:
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
connector:
- name: AMQP
artifact: smallrye-reactive-messaging-amqp
- name: MQTT
artifact: smallrye-reactive-messaging-mqtt
- name: RabbitMQ
artifact: smallrye-reactive-messaging-rabbitmq
- name: Pulsar
artifact: smallrye-reactive-messaging-pulsar
- name: GCP Pub/Sub
artifact: smallrye-reactive-messaging-gcp-pubsub
- name: AWS SNS
artifact: smallrye-reactive-messaging-aws-sns
- name: AWS SQS
artifact: smallrye-reactive-messaging-aws-sqs
- name: Camel
artifact: smallrye-reactive-messaging-camel
- name: JMS
artifact: smallrye-reactive-messaging-jms
- name: In-Memory
artifact: smallrye-reactive-messaging-in-memory
java:
- '17'
- '21'
- '25'
name: ${{ matrix.connector.name }} Tests (Java ${{ matrix.java }})
steps:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: temurin
cache: maven
- name: Download Maven Repository
uses: actions/download-artifact@v8
with:
name: maven-repo-java-${{ matrix.java }}
path: ~/.m2/repository/io/smallrye/reactive/
- name: Run ${{ matrix.connector.name }} Tests
run: |
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon \
-B verify -Dtest-containers=true \
-Drevapi.skip=true -Dformat.skip=true \
-pl :${{ matrix.connector.artifact }}

slow-flaky-tests:
needs: build
runs-on: ubuntu-latest
continue-on-error: true
strategy:
fail-fast: false
matrix:
connector:
- name: Kafka
artifact: smallrye-reactive-messaging-kafka
- name: Pulsar
artifact: smallrye-reactive-messaging-pulsar
- name: Kafka Test Companion
artifact: smallrye-reactive-messaging-kafka-test-companion
name: ${{ matrix.connector.name }} Slow/Flaky Tests
steps:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: '21'
distribution: temurin
cache: maven
- name: Download Maven Repository
uses: actions/download-artifact@v8
with:
name: maven-repo-java-21
path: ~/.m2/repository/io/smallrye/reactive/
- name: Run ${{ matrix.connector.name }} Slow/Flaky Tests
run: |
mvn -s .build/ci-maven-settings.xml -Dmaven.resolver.transport=wagon \
-B verify -Pslow-flaky-tests -Dtest-containers=true \
-Drevapi.skip=true -Dformat.skip=true \
-pl :${{ matrix.connector.artifact }}
Loading