Skip to content

Commit e1324dc

Browse files
authored
Add Pulsar 4.0.x compatibility tests (#967)
Adds the ability to specify the Pulsar client version when running the samples apps. Uses this new capability to add entries to the check-samples.yml compatability test matrix to include Pulsar 4.0.x. See #923
1 parent d5b7cc8 commit e1324dc

File tree

8 files changed

+37
-9
lines changed

8 files changed

+37
-9
lines changed

.github/workflows/check-samples.yml

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ jobs:
2020
runjobs: ${{ steps.continue.outputs.runjobs }}
2121
project_version: ${{ steps.continue.outputs.project_version }}
2222
boot_version: ${{ steps.continue.outputs.boot_version }}
23+
pulsar_version: ${{ steps.continue.outputs.pulsar_version }}
2324
steps:
2425
- uses: actions/checkout@v4
2526
- id: continue
@@ -32,6 +33,8 @@ jobs:
3233
echo "project_version=$version" >>$GITHUB_OUTPUT
3334
bootVersion=$(cat gradle/libs.versions.toml | grep "spring-boot = \"" | cut -d '"' -f2)
3435
echo "boot_version=$bootVersion" >>$GITHUB_OUTPUT
36+
pulsarVersion=$(cat gradle/libs.versions.toml | grep "pulsar = \"" | cut -d '"' -f2)
37+
echo "pulsar_version=$pulsarVersion" >>$GITHUB_OUTPUT
3538
check_samples:
3639
name: Check Samples project
3740
needs: [prerequisites]
@@ -41,14 +44,37 @@ jobs:
4144
- javaVersion: 17
4245
springBootVersion: "${{ needs.prerequisites.outputs.boot_version }}"
4346
springPulsarVersion: "${{ needs.prerequisites.outputs.project_version }}"
47+
pulsarVersion: "${{ needs.prerequisites.outputs.pulsar_version }}"
4448
samplesTarget: ':runAllSampleTests'
4549
- javaVersion: 21
4650
springBootVersion: "${{ needs.prerequisites.outputs.boot_version }}"
4751
springPulsarVersion: "${{ needs.prerequisites.outputs.project_version }}"
52+
pulsarVersion: "${{ needs.prerequisites.outputs.pulsar_version }}"
4853
samplesTarget: ':runAllSampleTests -x :spring-pulsar-sample-apps:sample-pulsar-functions:sample-signup-function:test'
4954
- javaVersion: 17
50-
springBootVersion: "3.2.3-SNAPSHOT"
51-
springPulsarVersion: "1.0.0-SNAPSHOT"
55+
springBootVersion: "${{ needs.prerequisites.outputs.boot_version }}"
56+
springPulsarVersion: "${{ needs.prerequisites.outputs.project_version }}"
57+
pulsarVersion: "3.2.4"
58+
samplesTarget: ':runAllSampleTests'
59+
- javaVersion: 17
60+
springBootVersion: "${{ needs.prerequisites.outputs.boot_version }}"
61+
springPulsarVersion: "${{ needs.prerequisites.outputs.project_version }}"
62+
pulsarVersion: "4.0.1"
63+
samplesTarget: ':runAllSampleTests'
64+
- javaVersion: 17
65+
springBootVersion: "3.3.7-SNAPSHOT"
66+
springPulsarVersion: "1.1.7-SNAPSHOT"
67+
pulsarVersion: "3.2.4"
68+
samplesTarget: ':runAllSampleTests'
69+
- javaVersion: 17
70+
springBootVersion: "3.3.7-SNAPSHOT"
71+
springPulsarVersion: "1.1.7-SNAPSHOT"
72+
pulsarVersion: "3.3.3"
73+
samplesTarget: ':runAllSampleTests'
74+
- javaVersion: 17
75+
springBootVersion: "3.3.7-SNAPSHOT"
76+
springPulsarVersion: "1.1.7-SNAPSHOT"
77+
pulsarVersion: "4.0.1"
5278
samplesTarget: ':runAllSampleTests'
5379
runs-on: ubuntu-latest
5480
if: needs.prerequisites.outputs.runjobs
@@ -60,6 +86,7 @@ jobs:
6086
LOCAL_REPOSITORY_PATH: ${{ github.workspace }}/build/publications/repos
6187
VERSION: ${{ matrix.springPulsarVersion }}
6288
BOOT_VERSION: ${{ matrix.springBootVersion }}
89+
PULSAR_VERSION: ${{ matrix.pulsarVersion }}
6390
JAVA_VERSION: ${{ matrix.javaVersion }}
6491
run: |
6592
./gradlew publishMavenJavaPublicationToLocalRepository
@@ -68,6 +95,7 @@ jobs:
6895
-PlocalRepositoryPath="$LOCAL_REPOSITORY_PATH" \
6996
-PspringPulsarVersion="$VERSION" \
7097
-PspringBootVersion="$BOOT_VERSION" \
98+
-PpulsarVersion="$PULSAR_VERSION" \
7199
-PtestToolchain="$JAVA_VERSION" \
72100
-PsampleTests \
73101
${{ matrix.samplesTarget }}

spring-pulsar-sample-apps/sample-failover-custom-router/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ repositories {
1313
}
1414

1515
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
16-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
16+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1717

1818
ext['spring-pulsar.version'] = "${project.property('version.samples')}"
1919
ext['pulsar.version'] = "${pulsarVersion}"

spring-pulsar-sample-apps/sample-imperative-produce-consume/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ repositories {
1313
}
1414

1515
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
16-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
16+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1717

1818
ext['spring-pulsar.version'] = "${project.property('version.samples')}"
1919
ext['pulsar.version'] = "${pulsarVersion}"

spring-pulsar-sample-apps/sample-pulsar-binder/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ repositories {
1313
}
1414

1515
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
16-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
16+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1717
def springCloudStreamVersion = versionCatalog.findVersion("spring-cloud-stream").orElseThrow().displayName
1818

1919
ext['spring-pulsar.version'] = "${project.property('version.samples')}"

spring-pulsar-sample-apps/sample-pulsar-functions/sample-signup-app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ repositories {
1515

1616
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
1717
def springCloudStreamVersion = versionCatalog.findVersion("spring-cloud-stream").orElseThrow().displayName
18-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
18+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1919

2020
ext['spring-pulsar.version'] = "${project.property('version.samples')}"
2121
ext['pulsar.version'] = "${pulsarVersion}"

spring-pulsar-sample-apps/sample-pulsar-functions/sample-signup-function/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ repositories {
1111
}
1212

1313
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
14-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
14+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1515

1616
dependencies {
1717
implementation "org.apache.pulsar:pulsar-client-all:${pulsarVersion}"

spring-pulsar-sample-apps/sample-pulsar-reader/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ repositories {
1313
}
1414

1515
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
16-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
16+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1717

1818
ext['spring-pulsar.version'] = "${project.property('version.samples')}"
1919
ext['pulsar.version'] = "${pulsarVersion}"

spring-pulsar-sample-apps/sample-reactive/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ repositories {
1313
}
1414

1515
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
16-
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
16+
def pulsarVersion = project.properties['pulsarVersion'] ?: versionCatalog.findVersion("pulsar").orElseThrow().displayName
1717
def pulsarReactiveVersion = versionCatalog.findVersion("pulsar-reactive").orElseThrow().displayName
1818

1919
ext['spring-pulsar.version'] = "${project.property('version.samples')}"

0 commit comments

Comments
 (0)