Skip to content

Commit 7173628

Browse files
author
VijiCodes
committed
ci: add build-and-release workflow only
1 parent be1b1be commit 7173628

File tree

1 file changed

+85
-0
lines changed

1 file changed

+85
-0
lines changed
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
name: Build and Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
jobs:
9+
build-artifacts:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Checkout repository
13+
uses: actions/checkout@v4
14+
15+
- name: Set up JDK
16+
uses: actions/setup-java@v3
17+
with:
18+
distribution: 'temurin'
19+
java-version: '21'
20+
21+
- name: Set up Gradle
22+
uses: gradle/gradle-build-action@v2
23+
24+
- name: Build JAR, ShadowJAR and WAR
25+
run: ./gradlew build shadowJar :webapp:shadowJar :webapp:war
26+
27+
- name: Upload artifacts (.jar and .war)
28+
uses: actions/upload-artifact@v4
29+
with:
30+
name: jars-and-wars
31+
path: |
32+
build/libs/*.jar
33+
build/libs/*.war
34+
webapp/build/libs/*.jar
35+
webapp/build/libs/*.war
36+
37+
- name: Create GitHub Release with JAR/WAR files
38+
uses: softprops/action-gh-release@v1
39+
with:
40+
files: |
41+
build/libs/*.jar
42+
build/libs/*.war
43+
webapp/build/libs/*.war
44+
webapp/build/libs/*.jar
45+
env:
46+
GITHUB_TOKEN: ${{ secrets.GH_PAT }}
47+
48+
build-exe:
49+
runs-on: windows-latest
50+
needs: build-artifacts
51+
steps:
52+
- name: Checkout repository
53+
uses: actions/checkout@v4
54+
55+
- name: Set up JDK
56+
uses: actions/setup-java@v3
57+
with:
58+
distribution: 'temurin'
59+
java-version: '21'
60+
61+
- name: Download and extract WiX Toolset 3.11
62+
run: |
63+
Invoke-WebRequest -Uri https://github.com/wixtoolset/wix3/releases/download/wix3111rtm/wix311-binaries.zip -OutFile wix.zip
64+
Expand-Archive wix.zip -DestinationPath "$env:ProgramFiles\wix"
65+
echo "$env:ProgramFiles\wix" | Out-File -Append -Encoding ascii $env:GITHUB_PATH
66+
shell: pwsh
67+
68+
- name: Set up Gradle
69+
uses: gradle/gradle-build-action@v2
70+
71+
- name: Run createEXE task with debug output
72+
run: ./gradlew createEXE
73+
74+
- name: Upload EXE Installer
75+
uses: actions/upload-artifact@v4
76+
with:
77+
name: windows-installer
78+
path: build/**/*.exe
79+
80+
- name: Add EXE to GitHub Release
81+
uses: softprops/action-gh-release@v1
82+
with:
83+
files: build/**/*.exe
84+
env:
85+
GITHUB_TOKEN: ${{ secrets.GH_PAT }}

0 commit comments

Comments
 (0)