Test against RabbitMQ stable #692
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test against RabbitMQ stable | |
on: | |
push: | |
branches: | |
- main | |
workflow_dispatch: | |
schedule: | |
- cron: '0 * * * *' | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
jobs: | |
build: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Checkout tls-gen | |
uses: actions/checkout@v4 | |
with: | |
repository: rabbitmq/tls-gen | |
path: './tls-gen' | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
cache: 'maven' | |
server-id: ossrh | |
server-username: MAVEN_USERNAME | |
server-password: MAVEN_PASSWORD | |
gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} | |
gpg-passphrase: MAVEN_GPG_PASSPHRASE | |
- name: Start broker | |
run: ci/start-broker.sh | |
- name: Test (no dynamic-batch publishing) | |
run: | | |
./mvnw verify -Drabbitmqctl.bin=DOCKER:rabbitmq \ | |
-Drabbitmq.stream.producer.dynamic.batch=false \ | |
-Dca.certificate=./tls-gen/basic/result/ca_certificate.pem \ | |
-Dclient.certificate=./tls-gen/basic/result/client_$(hostname)_certificate.pem \ | |
-Dclient.key=./tls-gen/basic/result/client_$(hostname)_key.pem | |
- name: Test (dynamic-batch publishing) | |
run: | | |
./mvnw test -Drabbitmqctl.bin=DOCKER:rabbitmq \ | |
-Drabbitmq.stream.producer.dynamic.batch=true \ | |
-Dca.certificate=./tls-gen/basic/result/ca_certificate.pem \ | |
-Dclient.certificate=./tls-gen/basic/result/client_$(hostname)_certificate.pem \ | |
-Dclient.key=./tls-gen/basic/result/client_$(hostname)_key.pem | |
- name: Stop broker | |
run: docker stop rabbitmq && docker rm rabbitmq | |
- name: Start cluster | |
run: ci/start-cluster.sh | |
- name: Test against cluster | |
run: ./mvnw test -Dtest="*ClusterTest" -Drabbitmqctl.bin=DOCKER:rabbitmq0 | |
- name: Stop cluster | |
run: docker compose --file ci/cluster/docker-compose.yml down | |
- name: Upload Codecov report | |
run: bash <(curl -s https://codecov.io/bash) | |
- name: Publish snapshot | |
run: ./mvnw clean deploy -Psnapshots -DskipITs -DskipTests | |
env: | |
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} | |
MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }} | |
MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} | |
- name: Publish Documentation | |
run: | | |
git config user.name "rabbitmq-ci" | |
git config user.email "rabbitmq-ci@users.noreply.github.com" | |
ci/publish-documentation-to-github-pages.sh |