1010
1111jobs :
1212
13- # build and test, then upload logs if failure
1413 build :
1514 runs-on : ubuntu-latest
16-
1715 steps :
18161917 - name : Spring Gradle Build Action
@@ -22,39 +20,10 @@ jobs:
2220 java-version : ' 17'
2321 distribution : ' temurin'
2422 - name : Build with Gradle
25- run : ./gradlew build
26- - name : Tar Build Logs
27- if : ${{ failure() }}
28- run : |
29- mkdir -p build
30- tar \
31- -zc \
32- --ignore-failed-read \
33- --file build/buildlogs.tar.gz \
34- */build/reports \
35- */*/build/reports
36- - name : Upload Build Logs
37- if : ${{ failure() }}
38- 39- with :
40- name : buildlogs
41- path : build/buildlogs.tar.gz
23+ run : ./gradlew -Dmaven.repo.local=$(pwd)/deployment-repository clean build distZip publishToMavenLocal
4224
43- # if build job succeed, build without tests and publish
44- publish :
45- needs : build
46- runs-on : ubuntu-latest
47- steps :
48- 49- - name : Spring Gradle Build Action
50- uses : spring-io/spring-gradle-build-action@v2
51- with :
52- java-version : ' 17'
53- distribution : ' temurin'
54- - name : Build with Gradle
55- run : ./gradlew -Dmaven.repo.local=$(pwd)/deployment-repository -x test clean build publishToMavenLocal
56-
57- - name : Deploy
25+ - name : Deploy artefacts
26+ if : ${{ github.repository == 'spring-projects/spring-statemachine' && github.ref_name == 'main' }}
58275928 with :
6029 uri : ' https://repo.spring.io'
6332 build-name : ' spring-statemachine-main'
6433 repository : ' libs-snapshot-local'
6534 folder : ' deployment-repository'
35+
36+ - name : Deploy documentation
37+ if : ${{ github.repository == 'spring-projects/spring-statemachine' && github.ref_name == 'main' }}
38+ env :
39+ DOCS_SSH_KEY : ${{ secrets.DOCS_SSH_KEY }}
40+ DOCS_SSH_HOST_KEY : ${{ secrets.DOCS_SSH_HOST_KEY }}
41+ DOCS_HOST : ${{ secrets.DOCS_HOST }}
42+ DOCS_USERNAME : ${{ secrets.DOCS_USERNAME }}
43+ DOCS_PATH : ${{ secrets.DOCS_PATH }}
44+ run : |
45+ mkdir "$HOME/.ssh"
46+ echo "$DOCS_SSH_KEY" > "$HOME/.ssh/key"
47+ chmod 600 "$HOME/.ssh/key"
48+ echo "$DOCS_SSH_HOST_KEY" > "$HOME/.ssh/known_hosts"
49+
50+ PROJECT_VERSION=$(cat gradle.properties | grep "version=" | cut -d '=' -f 2)
51+ ssh -i $HOME/.ssh/key $DOCS_USERNAME@$DOCS_HOST "cd $DOCS_PATH && mkdir -p $PROJECT_VERSION"
52+
53+ pushd build
54+ scp -i $HOME/.ssh/key -r api $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION
55+ popd
56+ pushd docs/build/docs
57+ scp -i $HOME/.ssh/key -r asciidoc $DOCS_USERNAME@$DOCS_HOST:$DOCS_PATH/$PROJECT_VERSION/reference
58+ popd
0 commit comments