-
Notifications
You must be signed in to change notification settings - Fork 1
89 lines (78 loc) · 2.56 KB
/
start_release.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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#
name: '[ Start ] Release artifacts, Build & Deploy'
on:
workflow_dispatch:
inputs:
BUILD_VERSION:
description: 'The version to build and deploy'
required: true
default: '0-SNAPSHOT'
release:
types: [created]
env:
RELEASE_TAG: ${{ github.event.release.tag_name }}
jobs:
ReleaseVersion:
runs-on: ubuntu-latest
outputs:
build_version: ${{ steps.release_version.outputs.build_version }}
steps:
- name: "Release Version and Properties"
id: release_version
run: |
VERSION=${RELEASE_TAG#v}
echo "BUILD_VERSION=${RELEASE_TAG#v}" >> "$GITHUB_ENV"
echo "build_version=${RELEASE_TAG#v}" >> "$GITHUB_OUTPUT"
echo "Release version is $VERSION"
echo "RELEASE_ASSETS_URL=${{ github.event.release.assets_url }}" >> "$GITHUB_ENV"
echo "release_assets_url=${{ github.event.release.assets_url }}" >> "$GITHUB_OUTPUT"
- name: Print output variables
run: |
echo BUILD_VERSION: ${{ steps.release_version.outputs.build_version }}
echo RELEASE_ASSETS_URL: ${{ steps.release_version.outputs.release_assets_url }}
Build:
needs: [ ReleaseVersion ]
uses: ./.github/workflows/maven_build.yml
with:
build_version: ${{ needs.ReleaseVersion.outputs.build_version }}
release_build: true
secrets: inherit
permissions:
pull-requests: write
contents: write
packages: write
UploadAssetsToRelease:
needs: [ ReleaseVersion, Build ]
runs-on: ubuntu-latest
permissions:
contents: write
env:
BUILD_VERSION: ${{ needs.ReleaseVersion.outputs.build_version }}
steps:
- name: (Info) build_artifact_id
run: echo "build_artifact_id=${{ needs.Build.outputs.build_artifact_id }}"
- uses: actions/download-artifact@v4
with:
merge-multiple: true
env:
ARTIFACT_ID: ${{ needs.Build.outputs.build_artifact_id }}
- name: Upload artifact to release
uses: softprops/action-gh-release@v2
with:
files: |
./**/target/*.jar
./**/target/*.jar.asc
./**/target/*.pom
./**/target/*.pom.asc
./LICENSE
./README.md
Publish:
needs: [ ReleaseVersion, Build ]
uses: ./.github/workflows/maven_publish.yml
with:
build_version: ${{ needs.ReleaseVersion.outputs.build_version }}
build_artifact_id: ${{ needs.Build.outputs.build_artifact_id }}
secrets: inherit
permissions:
packages: write
contents: write