generated from inventage/keycloak-custom
-
Notifications
You must be signed in to change notification settings - Fork 0
42 lines (39 loc) · 1.51 KB
/
release-pipeline.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
name: Release Pipeline
on:
workflow_dispatch:
inputs:
releaseVersion:
description: "Default version to use when preparing a release."
required: true
default: "X.Y.Z"
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Replace "SNAPSHOT" within POM version with date, build number and commit hash
run: |
snapshot_version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
major_minor_patch=$(echo "${snapshot_version}" | sed 's/SNAPSHOT//g')
date=$(date -u +%Y%m%d%H%M)
release_candidate_version=${major_minor_patch}${date}-${{github.run_number}}-${GITHUB_SHA::8}
mvn versions:set -DnewVersion=${release_candidate_version}
- name: Build with Maven
run: mvn -B deploy -Dbuild.number=${{github.run_number}} -Dbuild.revision=${GITHUB_SHA} --file pom.xml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Release to GitHub releases
uses: softprops/action-gh-release@v1
with:
files: "extensions/extension-signature/target/signature-*.jar"
body_path: "CHANGELOG.md"
fail_on_unmatched_files: true
tag_name: ${{ github.event.inputs.releaseVersion }}
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}