49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
name: Maven build
|
|
run-name: Build application with maven
|
|
on: [ push ]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
MAVEN_ACCESS_TOKEN: ${{ secrets.CI_TOKEN }}
|
|
MAVEN_REPO_OWNER: ${{ gitea.actor }}
|
|
RELEASE_VERSION_BASE: 1.0
|
|
steps:
|
|
- name: Check out latest repository code
|
|
uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
java-version: '8'
|
|
distribution: 'temurin'
|
|
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
java-version: '21'
|
|
distribution: 'temurin'
|
|
|
|
- name: Set versions
|
|
run: |
|
|
VERSION_BASE=$RELEASE_VERSION_BASE
|
|
if [ "$GITHUB_REF_TYPE" = "tag" ]; then
|
|
VERSION_BASE="${GITHUB_REF_NAME}"
|
|
elif echo "$GITHUB_REF_NAME" | grep -qE '^release/'; then
|
|
VERSION_BASE="${GITHUB_REF_NAME#release/}"
|
|
fi
|
|
if [ "$GITHUB_REF_TYPE" = "branch" ]; then
|
|
BUILD_VERSION="${VERSION_BASE}-SNAPSHOT"
|
|
else
|
|
BUILD_VERSION="${VERSION_BASE}"
|
|
fi
|
|
./mvnw versions:set -DnewVersion=${BUILD_VERSION} -DprocessAllModules=true
|
|
|
|
- name: Build project
|
|
run: ./mvnw -s .mvn/settings.xml clean install -DskipTests
|
|
|
|
- name: Run tests
|
|
run: ./mvnw -s .mvn/settings.xml test
|
|
|
|
- name: Deploy project
|
|
run: ./mvnw -s .mvn/settings.xml deploy
|