Skip to content

Commit

Permalink
Merge branch 'release/v1.12.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
rebazer committed Jun 28, 2021
2 parents 4570b47 + b1ce095 commit 6533d67
Show file tree
Hide file tree
Showing 21 changed files with 684 additions and 361 deletions.
12 changes: 12 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
*.css text encoding=utf-8 eol=lf
*.html text encoding=utf-8 eol=lf
*.ignore text encoding=utf-8 eol=lf
*.java text encoding=utf-8 eol=lf
*.js text encoding=utf-8 eol=lf
*.md text encoding=utf-8 eol=lf
*.properties text encoding=utf-8 eol=lf
*.sh text encoding=utf-8 eol=lf
*.xml text encoding=utf-8 eol=lf
*.yaml text encoding=utf-8 eol=lf
*.yml text encoding=utf-8 eol=lf
*.cmd text encoding=utf-8 eol=crlf
9 changes: 9 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
version: 2
updates:
- package-ecosystem: maven
directory: "/"
schedule:
interval: daily
time: "04:00"
timezone: Europe/Berlin
open-pull-requests-limit: 10
68 changes: 68 additions & 0 deletions .github/workflows/build-project.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Build project

on: [push, pull_request]


env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress
HAS_SONAR_TOKEN: ${{ secrets.SONAR_TOKEN != '' }}


jobs:
default:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Fetch unshallow to enable blame for Sonar
run: git fetch --prune --unshallow

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Cache Sonar
uses: actions/cache@v1
with:
path: ~/.sonar/cache/
key: ${{ runner.os }}-sonar

- name: Compile
run: mvn ${MVN_ARGS} clean package -DskipTests

- uses: actions/setup-java@v1
with:
java-version: 15

- name: Test with SonarCloud
id: test-with-sonar
if: ${{ env.HAS_SONAR_TOKEN == 'true' }}
run: >
mvn ${MVN_ARGS} verify sonar:sonar -Pcoverage
-Dsonar.host.url=https://sonarcloud.io
-Dsonar.organization=retest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

- name: Test without SonarCloud
id: test-without-sonar
if: ${{ steps.test-with-sonar.conclusion == 'skipped' }}
run: mvn ${MVN_ARGS} verify

- name: Archive recheck tests.report
if: always()
uses: actions/upload-artifact@v2
with:
name: tests.report
path: target/test-classes/retest/recheck/tests.report
retention-days: 10
45 changes: 45 additions & 0 deletions .github/workflows/deploy-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Deploy releases

on:
push:
tags:
- 'v*'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- uses: actions/setup-java@v1
with:
java-version: 8
server-id: ossrh
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Install gpg secret key
run: |
gpg --batch --import <(echo -e "${{ secrets.OSSRH_GPG_SECRET_KEY }}")
gpg --list-secret-keys --keyid-format LONG
- id: publish-to-central
name: Publish to Central Repository
run: |
mvn ${MVN_ARGS} -DskipTests -Psign clean deploy
env:
GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }}
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }}
63 changes: 63 additions & 0 deletions .github/workflows/release-beta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Release beta

on:
workflow_dispatch:
inputs:
approval:
description: 'Do you really want to release a BETA from configured BRANCH?'
required: true
default: 'NO'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- name: Verify approval
run: "[[ $(echo ${{ github.event.inputs.approval }} | tr 'a-z' 'A-Z') == 'YES' ]]"

- uses: actions/checkout@v2
with:
fetch-depth: 0
token: ${{ secrets.TRIGGER_ACTIONS_GITHUB_TOKEN }}

- name: Verify for release or hotfix branch
run: "[[ $( git branch --show-current ) =~ ^release.*|^hotfix.* ]]"

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Configure Git user
run: |
git config user.email "ops+githubactions@retest.de"
git config user.name "retest release github action"
- id: next_beta
name: Find next beta version
run: |
# get next stable release version from pom.xml
RELEASE_VERSION=$( mvn help:evaluate -Dexpression=project.version -q -DforceStdout | sed 's/-SNAPSHOT//' )
# find last beta for this version using git tags. Prefix with 0 als default for next line
LAST_BETA_TAG=0$( git for-each-ref --sort=-taggerdate --count=1 --format '%(refname:short)' "refs/tags/v${RELEASE_VERSION}-beta.*" )
# Create string for beta version
NEXT_BETA="$RELEASE_VERSION-beta.$((1+"${LAST_BETA_TAG/v$RELEASE_VERSION-beta./}"))"
echo "::set-output name=version::$NEXT_BETA"
- name: Create beta release tag
run: |
mvn versions:set -DnewVersion=${{ steps.next_beta.outputs.version }} -DgenerateBackupPoms=false
git commit -a -m "ci: release ${{ steps.next_beta.outputs.version }}"
git tag -a v${{ steps.next_beta.outputs.version }} -m "ci: tag beta release ${{ steps.next_beta.outputs.version }}"
git push --tags
45 changes: 45 additions & 0 deletions .github/workflows/release-feature-finish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Release feature finish

on:
workflow_dispatch:
inputs:
approval:
description: 'Do you really want to finish the current FEATURE release?'
required: true
default: 'NO'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- name: Verify approval
run: "[[ $(echo ${{ github.event.inputs.approval }} | tr 'a-z' 'A-Z') == 'YES' ]]"

- uses: actions/checkout@v2
with:
fetch-depth: 0
token: ${{ secrets.TRIGGER_ACTIONS_GITHUB_TOKEN }}

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Configure Git user
run: |
git config user.email "ops+githubactions@retest.de"
git config user.name "retest release github action"
- name: Tag and finish release branch
run: mvn ${MVN_ARGS} gitflow:release-finish
45 changes: 45 additions & 0 deletions .github/workflows/release-feature-start.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Release feature start

on:
workflow_dispatch:
inputs:
approval:
description: 'Do you really want to start a FEATURE release from DEVELOP branch?'
required: true
default: 'NO'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- name: Verify approval
run: "[[ $(echo ${{ github.event.inputs.approval }} | tr 'a-z' 'A-Z') == 'YES' ]]"

- uses: actions/checkout@v2
with:
token: ${{ secrets.TRIGGER_ACTIONS_GITHUB_TOKEN }}

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Configure Git user
run: |
git config user.email "ops+githubactions@retest.de"
git config user.name "retest release github action"
- name: Start release branch
run: mvn ${MVN_ARGS} gitflow:release-start
45 changes: 45 additions & 0 deletions .github/workflows/release-hotfix-finish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Release hotfix finish

on:
workflow_dispatch:
inputs:
approval:
description: 'Do you really want to finish the current HOTFIX release?'
required: true
default: 'NO'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- name: Verify approval
run: "[[ $(echo ${{ github.event.inputs.approval }} | tr 'a-z' 'A-Z') == 'YES' ]]"

- uses: actions/checkout@v2
with:
fetch-depth: 0
token: ${{ secrets.TRIGGER_ACTIONS_GITHUB_TOKEN }}

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Configure Git user
run: |
git config user.email "ops+githubactions@retest.de"
git config user.name "retest release github action"
- name: Tag and finish release branch
run: mvn ${MVN_ARGS} gitflow:hotfix-finish
45 changes: 45 additions & 0 deletions .github/workflows/release-hotfix-start.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Release hotfix start

on:
workflow_dispatch:
inputs:
approval:
description: 'Do you really want to start a HOTFIX release from MAIN branch?'
required: true
default: 'NO'

env:
MVN_ARGS: --batch-mode --errors --fail-fast --no-transfer-progress

jobs:
default:

runs-on: ubuntu-latest

steps:
- name: Verify approval
run: "[[ $(echo ${{ github.event.inputs.approval }} | tr 'a-z' 'A-Z') == 'YES' ]]"

- uses: actions/checkout@v2
with:
token: ${{ secrets.TRIGGER_ACTIONS_GITHUB_TOKEN }}

- uses: actions/setup-java@v1
with:
java-version: 8

- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: Configure Git user
run: |
git config user.email "ops+githubactions@retest.de"
git config user.name "retest release github action"
- name: Start release branch
run: mvn ${MVN_ARGS} gitflow:hotfix-start
Loading

0 comments on commit 6533d67

Please sign in to comment.