Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
7dc5ed8
Upgrade gradle version to 8.13
fmbenhassine Apr 11, 2025
5170c0e
Fix warning about missing "@Deprecated" on a deprecated method
fmbenhassine Apr 11, 2025
1a017dc
Remove dependency to Spring Shell
fmbenhassine Apr 15, 2025
db87f87
Update test dependencies for the latest Spring Boot 3.5 snapshots
fmbenhassine Apr 22, 2025
a707ff0
Fix transitive dependency to mongodb-driver-sync
fmbenhassine May 28, 2025
7b19ac1
Update gradle to version 8.14.1
fmbenhassine May 28, 2025
50fca01
Update Spring Boot version to 3.5.0
fmbenhassine May 28, 2025
4235dcd
Refer to main branch instead of master
manedev79 Dec 18, 2023
c07d0bf
Fix typo
jesjos Jan 25, 2023
3c63147
fix variable name
VampireAchao Nov 6, 2023
be2009a
fix typo in recipes.adoc
winfriedgerlach Dec 18, 2024
7bc67e8
Fix typo in sm-config.adoc
fmbenhassine May 28, 2025
c41cda4
fixed some typos
jpw-src Aug 24, 2021
88ac89d
Update Revved up by Develocity badge
erichaagdev Jan 22, 2024
f31d2b1
Fix https://github.com/spring-projects/spring-statemachine/issues/1162
mrodal Sep 10, 2024
bf909f6
Update sm-examples-turnstilereactive.adoc
eagletalon139 Aug 12, 2021
e3e1190
Upgrade Spring Boot to version 3.5.1
fmbenhassine Jun 27, 2025
ac5aa33
Update CI workflow
fmbenhassine Jun 27, 2025
b0b6995
Replace JFrog CLI usage with Spring IO actions
fmbenhassine Jun 27, 2025
62c6a72
Upgrade Spring Boot to version 3.5.3
fmbenhassine Jun 27, 2025
3034d03
Update maven publishing plugin
fmbenhassine Jun 27, 2025
1d7477a
Exclude docs from build
fmbenhassine Jun 28, 2025
0e9044e
Add artifactory staging workflow
fmbenhassine Jun 29, 2025
06e16ba
Update release workflow
fmbenhassine Jun 29, 2025
2a365a8
Increase timeout in release workflow
fmbenhassine Jun 29, 2025
665f551
Release version 4.0.1
fmbenhassine Jun 29, 2025
0a10a37
Next development version
fmbenhassine Jun 29, 2025
92bfea9
Update Spring Boot version to latest snapshot
fmbenhassine Jun 29, 2025
8177102
Put back docs as part of the build
fmbenhassine Jun 29, 2025
f9311f1
Update README to reflect maintenance mode status
fmbenhassine Aug 28, 2025
4b29c2b
Upgrade gradle version to 8.14.3
fmbenhassine Aug 28, 2025
d9a84e2
Upgrade Github workflows
fmbenhassine Aug 28, 2025
f5fcd1f
Update repository resolution order
fmbenhassine Aug 28, 2025
5dbb3f6
Fix gradle task name in deploy-docs.yml
fmbenhassine Aug 28, 2025
4e14363
Fix documentation upload
fmbenhassine Aug 28, 2025
5c9c0f6
Update dependencies
fmbenhassine Aug 28, 2025
ced2098
Update whatsnew.adoc for v4
fmbenhassine Jun 10, 2026
fc394cb
Update dependencies
fmbenhassine Jun 10, 2026
9120099
Update gradle version to 8.14.5
fmbenhassine Jun 10, 2026
776ee25
Update README.adoc
fmbenhassine Jun 10, 2026
b37e7f4
Fix typo
b0n541 Sep 11, 2025
6b77ea6
Fix kryo default configuration
fmbenhassine Jun 11, 2026
44ce34b
Fix javadoc warning
fmbenhassine Jun 11, 2026
18a37b0
Release version 4.0.2
fmbenhassine Jun 11, 2026
718d070
Update README for EOL
fmbenhassine Jul 3, 2026
b78817d
Create LICENSE prior to archive
trevormarshall Jul 5, 2026
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
22 changes: 0 additions & 22 deletions .github/workflows/central-sync-close.yml

This file was deleted.

54 changes: 0 additions & 54 deletions .github/workflows/central-sync-create.yml

This file was deleted.

22 changes: 0 additions & 22 deletions .github/workflows/central-sync-release.yml

This file was deleted.

49 changes: 0 additions & 49 deletions .github/workflows/ci-boot.yml

This file was deleted.

109 changes: 35 additions & 74 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,88 +10,49 @@ on:

jobs:

# build and test, then upload logs if failure
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.2.2
- name: Setup JDK
uses: actions/setup-java@v4.7.0
- name: Spring Gradle Build Action
uses: spring-io/spring-gradle-build-action@v2
with:
distribution: adopt
java-version: 17
cache: gradle
java-version: '17'
distribution: 'temurin'
- name: Build with Gradle
run: ./gradlew build
env:
GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USER }}
GRADLE_ENTERPRISE_CACHE_PASSWORD: ${{ secrets.GRADLE_ENTERPRISE_CACHE_PASSWORD }}
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }}
- name: Tar Build Logs
if: ${{ failure() }}
run: |
mkdir -p build
tar \
-zc \
--ignore-failed-read \
--file build/buildlogs.tar.gz \
*/build/reports \
*/*/build/reports
- name: Upload Build Logs
if: ${{ failure() }}
uses: actions/upload-artifact@v4.6.0
with:
name: buildlogs
path: build/buildlogs.tar.gz
run: ./gradlew -Dmaven.repo.local=$(pwd)/deployment-repository clean build distZip publishToMavenLocal

# if build job succeed, build without tests and publish
publish:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: actions/setup-java@v4.7.0
- name: Deploy artefacts
if: ${{ github.repository == 'spring-projects/spring-statemachine' && github.ref_name == 'main' }}
uses: spring-io/artifactory-deploy-action@v0.0.2
with:
distribution: adopt
java-version: 17
cache: gradle
- uses: jfrog/setup-jfrog-cli@v4.5.6
with:
version: 2.73.2
env:
JF_ENV_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }}

# setup non persistent config for jfrog gradle to use server defined in
# secret which points via virtual repo into spring local repo.
# modify default build name and number as we don't like how those
# gets used from action defaults.
- name: Configure JFrog Cli
env:
JFROG_CLI_SERVER_ID: "repo.spring.io"
run: |
jf gradlec \
--use-wrapper \
--uses-plugin \
--deploy-ivy-desc=false \
--server-id-resolve=repo.spring.io \
--server-id-deploy=repo.spring.io \
--repo-resolve=snapshot \
--repo-deploy=snapshot
echo JFROG_CLI_BUILD_NAME=spring-statemachine-main >> $GITHUB_ENV
echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV
uri: 'https://repo.spring.io'
username: ${{ secrets.ARTIFACTORY_USERNAME }}
password: ${{ secrets.ARTIFACTORY_PASSWORD }}
build-name: 'spring-statemachine-main'
repository: 'libs-snapshot-local'
folder: 'deployment-repository'

# as we already tested just build and publish
- name: Build and Publish Snapshot
run: |
jf gradle clean build -x test artifactoryPublish
- name: Deploy documentation
if: ${{ github.repository == 'spring-projects/spring-statemachine' && github.ref_name == 'main' }}
env:
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_PRIVATE_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_PASSPHRASE }}
GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USER }}
GRADLE_ENTERPRISE_CACHE_PASSWORD: ${{ secrets.GRADLE_ENTERPRISE_CACHE_PASSWORD }}
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }}
# publish build info so that we can see it in artifactory "builds"
- name: Publish Build Info
DOCS_SSH_KEY: ${{ secrets.DOCS_SSH_KEY }}
DOCS_SSH_HOST_KEY: ${{ secrets.DOCS_SSH_HOST_KEY }}
DOCS_HOST: ${{ secrets.DOCS_HOST }}
DOCS_USERNAME: ${{ secrets.DOCS_USERNAME }}
DOCS_PATH: ${{ secrets.DOCS_PATH }}
run: |
jf rt build-publish
mkdir "$HOME/.ssh"
echo "$DOCS_SSH_KEY" > "$HOME/.ssh/key"
chmod 600 "$HOME/.ssh/key"
echo "$DOCS_SSH_HOST_KEY" > "$HOME/.ssh/known_hosts"

PROJECT_VERSION=$(cat gradle.properties | grep "version=" | cut -d '=' -f 2)
ssh -i $HOME/.ssh/key $DOCS_USERNAME@$DOCS_HOST "cd $DOCS_PATH && mkdir -p $PROJECT_VERSION"

pushd build
scp -i $HOME/.ssh/key -r api $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION
popd
pushd docs/build/docs
scp -i $HOME/.ssh/key -r asciidoc $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION/reference
popd
47 changes: 47 additions & 0 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Deploy Docs

on:
workflow_dispatch:
inputs:
releaseVersion:
description: "Release version (4.0.x)"
required: true

jobs:

publish-docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- name: Spring Gradle Build Action
uses: spring-io/spring-gradle-build-action@v2
with:
java-version: '17'
distribution: 'temurin'

- name: Capture project version
run: echo PROJECT_VERSION=${{ github.event.inputs.releaseVersion }} >> $GITHUB_ENV

- name: Build with Gradle
run: ./gradlew -Pversion=$PROJECT_VERSION distZip

- name: Deploy documentation
if: ${{ github.repository == 'spring-projects/spring-statemachine' && github.ref_name == 'main' }}
env:
DOCS_SSH_KEY: ${{ secrets.DOCS_SSH_KEY }}
DOCS_SSH_HOST_KEY: ${{ secrets.DOCS_SSH_HOST_KEY }}
DOCS_HOST: ${{ secrets.DOCS_HOST }}
DOCS_USERNAME: ${{ secrets.DOCS_USERNAME }}
DOCS_PATH: ${{ secrets.DOCS_PATH }}
run: |
mkdir "$HOME/.ssh"
echo "$DOCS_SSH_KEY" > "$HOME/.ssh/key"
chmod 600 "$HOME/.ssh/key"
echo "$DOCS_SSH_HOST_KEY" > "$HOME/.ssh/known_hosts"
ssh -i $HOME/.ssh/key $DOCS_USERNAME@$DOCS_HOST "cd $DOCS_PATH && mkdir -p $PROJECT_VERSION"
pushd build
scp -i $HOME/.ssh/key -r api $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION
popd
pushd docs/build/docs
scp -i $HOME/.ssh/key -r asciidoc $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION/reference
popd
20 changes: 8 additions & 12 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,17 @@ jobs:

# build and test, then upload logs if failure
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
java: [ 17 ]
fail-fast: false
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Setup JDK
uses: actions/setup-java@v1
- uses: actions/checkout@v4.2.2
- name: Spring Gradle Build Action
uses: spring-io/spring-gradle-build-action@v2
with:
java-version: ${{ matrix.java }}
java-version: '17'
distribution: 'temurin'
- name: Build with Gradle
run: ./gradlew clean build
run: ./gradlew build
- name: Tar Build Logs
if: ${{ failure() }}
run: |
Expand All @@ -36,7 +32,7 @@ jobs:
*/*/build/reports
- name: Upload Build Logs
if: ${{ failure() }}
uses: actions/upload-artifact@v4.4.3
uses: actions/upload-artifact@v4.6.2
with:
name: buildlogs
path: build/buildlogs.tar.gz
Loading