keycloak-restrict-client-auth/.github/workflows/release.yml
2021-05-09 22:56:30 +02:00

65 lines
2.3 KiB
YAML
Executable file

name: Release
on:
workflow_dispatch:
inputs:
releaseVersion:
description: "Default version to use when preparing a release."
required: true
default: "X.Y.Z"
developmentVersion:
description: "Default version to use for new local working copy."
required: true
default: "X.Y.Z-SNAPSHOT"
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Configure Git User
run: |
git config user.email "actions@github.com"
git config user.name "GitHub Actions"
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Cache maven repository
uses: actions/cache@v2
with:
path: "~/.m2/repository"
key: "${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}"
restore-keys: |
${{ runner.os }}-maven-
- name: Release to GitHub packages
run: mvn -B clean release:prepare release:perform -s maven-github-settings.xml --file pom.xml -DpushChanges=false -DlocalCheckout=true -DreleaseVersion=${{ github.event.inputs.releaseVersion }} -DdevelopmentVersion=${{ github.event.inputs.developmentVersion }}
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Release to GitHub releases
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: "target/keycloak-restrict-client-auth.jar"
body_path: "RELEASELOG"
fail_on_unmatched_files: "true"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Create Pull Request
id: create-pr
uses: peter-evans/create-pull-request@v3
with:
commit-message: "chore(release): Prepare next version"
delete-branch: "true"
branch: "release/${{ github.event.inputs.releaseVersion }}"
base: "main"
title: "chore(release): Prepare next version after release ${{ github.event.inputs.releaseVersion }}"
body: "Automated PR to prepare next version after release ${{ github.event.inputs.releaseVersion }}"
labels: "release"
assignees: "sventorben"
reviewers: "sventorben"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"