Adds a GHA workflow to check Spring Boot compatability of the framework. The workflow exercises the samples and dynamically sets the version of each samples Spring Boot plugin. We do the dynamic version setting using the power of Gradle init scripts and the fact that each of the samples is exposed as a Gradle module. Doing this has a positive side effect that our samples are kept up to date for both Maven and Gradle. Reworks the Gradle aspect of the samples as follows: - removes settings.xml in each sample in favor of root samples/setting.xml - removes Gradle wrapper from each sample in favor of root samples/gradlew - cleans up build.gradle (they were missing dependencies to work) - adds README-GRADLE.md at samples/ Signed-off-by: Chris Bono <chris.bono@gmail.com>
33 lines
949 B
YAML
33 lines
949 B
YAML
name: Check Samples (Spring Boot compatability)
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
check_samples:
|
|
name: Check Samples project
|
|
if: github.repository == 'spring-projects-experimental/spring-grpc'
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- javaVersion: 17
|
|
springBootVersion: "3.4.3"
|
|
- javaVersion: 17
|
|
springBootVersion: "3.5.0-SNAPSHOT"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: spring-io/spring-gradle-build-action@v2
|
|
- name: Check samples project
|
|
env:
|
|
BOOT_VERSION: ${{ matrix.springBootVersion }}
|
|
JAVA_VERSION: ${{ matrix.javaVersion }}
|
|
run: |
|
|
cd samples
|
|
./gradlew \
|
|
--init-script ./sample-apps-check-ci.gradle \
|
|
-PspringBootVersion="$BOOT_VERSION" \
|
|
-PtestToolchain="$JAVA_VERSION" \
|
|
--rerun-tasks --no-build-cache \
|
|
build
|