Skip to content

Commit b10c3ed

Browse files
Merge branch 'feature/auto-portable-package'
2 parents 6a85c8e + 36128ad commit b10c3ed

2 files changed

Lines changed: 139 additions & 13 deletions

File tree

.github/workflows/release_asset_upload.yml

Lines changed: 91 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@ on:
44
release:
55
types: [published]
66

7+
env:
8+
TAG: ${{ github.event.release.tag_name }}
9+
H2_PACKAGE_NAME: ${{ github.event.release.tag_name }}_h2_package
10+
QUICKSTART_VERSION: 1.3.8
11+
TEMP_DIR: ${{ github.workspace }}/temp
12+
DOWNLOADS_DIR: ${{ github.workspace }}/downloads
13+
MAC_JRE_URL: https://cdn.azul.com/zulu/bin/zulu21.42.19-ca-jre21.0.7-macosx_aarch64.zip
14+
WIN_JRE_URL: https://cdn.azul.com/zulu/bin/zulu21.42.19-ca-jre21.0.7-win_x64.zip
15+
716
jobs:
817
build_and_upload_assets:
918
runs-on: ubuntu-latest
@@ -28,24 +37,93 @@ jobs:
2837
./gradlew :dgrv4_Gateway_serv:clean :dgrv4_Gateway_serv:bootJar
2938
3039
- name: Create release directory
31-
run: mkdir -p h2-pack/keys
40+
run: mkdir -p $H2_PACKAGE_NAME/keys
3241

3342
- name: Copy JAR and other assets
3443
run: |
35-
mv dgrv4_Gateway_serv/build/libs/* h2-pack/
36-
mv dgrv4_Gateway_serv/keys/* h2-pack/keys/
37-
mv h2-pack/*.jar h2-pack/digirunner.jar
44+
mv dgrv4_Gateway_serv/build/libs/* $H2_PACKAGE_NAME/
45+
mv dgrv4_Gateway_serv/keys/* $H2_PACKAGE_NAME/keys/
46+
mv $H2_PACKAGE_NAME/*.jar $H2_PACKAGE_NAME/digirunner.jar
47+
48+
- name: Download Windows amd64 TPIsoftwareOSPO quickstart portable
49+
uses: robinraju/release-downloader@v1
50+
with:
51+
repository: TPIsoftwareOSPO/quickstart
52+
tag: "v$QUICKSTART_VERSION"
53+
fileName: "quickstart-portable_$QUICKSTART_VERSION_windows_amd64.zip"
54+
out-file-path: $DOWNLOADS_DIR
55+
56+
- name: Download Macos apple chip TPIsoftwareOSPO quickstart portable
57+
uses: robinraju/release-downloader@v1
58+
with:
59+
repository: TPIsoftwareOSPO/quickstart
60+
tag: "v$QUICKSTART_VERSION"
61+
fileName: "quickstart-portable_$QUICKSTART_VERSION_darwin_arm64.tar.gz"
62+
out-file-path: $DOWNLOADS_DIR
63+
64+
- name: Download Java 21 JRE from Azul Zulu
65+
run: |
66+
echo "Downloading Win Java JRE from: $WIN_JRE_URL"
67+
curl -L -o $DOWNLOADS_DIR/win/java_jre.zip $WIN_JRE_URL
68+
if [ $? -ne 0 ]; then
69+
echo "Error: Java JRE download failed from $WIN_JRE_URL"
70+
exit 1
71+
fi
72+
echo "Downloading Mac Java JRE from: $MAC_JRE_URL"
73+
curl -L -o $DOWNLOADS_DIR/mac/java_jre.zip $MAC_JRE_URL
74+
if [ $? -ne 0 ]; then
75+
echo "Error: Java JRE download failed from $MAC_JRE_URL"
76+
exit 1
77+
fi
78+
79+
- name: Extract Java JRE packages
80+
run: |
81+
unzip -q $DOWNLOADS_DIR/win/java_jre.zip -d $TEMP_DIR/win && rm $DOWNLOADS_DIR/win/java_jre.zip
82+
unzip -q $DOWNLOADS_DIR/mac/java_jre.zip -d $TEMP_DIR/mac && rm $DOWNLOADS_DIR/mac/java_jre.zip
83+
mv $TEMP_DIR/win/zulu21.42.19-ca-jre21.0.7-win_x64 $TEMP_DIR/win/jre
84+
mv $TEMP_DIR/mac/zulu21.42.19-ca-jre21.0.7-macosx_aarch64 $TEMP_DIR/mac/jre
85+
echo "ls -l $TEMP_DIR/win/jre"
86+
ls -l $TEMP_DIR/win/jre
87+
echo "ls -l $TEMP_DIR/mac/jre"
88+
ls -l $TEMP_DIR/mac/jre
89+
90+
- name: Packet Mac Portable
91+
run: |
92+
mkdir $TAG_macos_arm6
93+
tar -xzf quickstart-portable_$QUICKSTART_VERSION_darwin_arm64.tar.gz -C $TEMP_DIR/$TAG_macos_arm6/quickstart
94+
mv $TEMP_DIR/$TAG_macos_arm6/quickstart/quickstart-portable $TAG_macos_arm6/quickstart
95+
mv $TEMP_DIR/$TAG_macos_arm6/jre $TAG_macos_arm6
96+
mv deploys/quickstart/quickstart-mac.yaml $TAG_macos_arm6/quickstart.yaml
97+
cp -R $H2_PACKAGE_NAME/* $TAG_macos_arm6/digirunner
98+
3899
39100
- name: Zip release assets
40101
run: |
41-
zip -r h2-pack.zip h2-pack/
102+
zip -r $H2_PACKAGE_NAME.zip $H2_PACKAGE_NAME/
103+
mv mac $TAG_macos_arm64
104+
zip -r $TAG_macos_arm64.zip $TAG_macos_arm6/
42105
43-
- name: Upload Release Asset
44-
uses: actions/upload-release-asset@v1.0.2
45-
env:
46-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
106+
# - name: Upload Release Asset
107+
# uses: actions/upload-release-asset@v1.0.2
108+
# env:
109+
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
110+
# with:
111+
# upload_url: ${{ github.event.release.upload_url }}
112+
# asset_path: $H2_PACKAGE_NAME.zip
113+
# asset_name: $H2_PACKAGE_NAME.zip
114+
# asset_content_type: application/zip
115+
116+
- name: Create GitHub Release and Upload Asset
117+
uses: softprops/action-gh-release@v2
47118
with:
48-
upload_url: ${{ github.event.release.upload_url }}
49-
asset_path: h2-pack.zip
50-
asset_name: h2-pack.zip
51-
asset_content_type: application/zip
119+
tag_name: $TAG
120+
name: digirunner portable packages $TAG
121+
body: |
122+
Combined package generated from:
123+
- digiRunner-Open-Source: $TAG
124+
- TPIsoftwareOSPO/quickstart: $QUICKSTART_VERSION
125+
files: |
126+
$H2_PACKAGE_NAME.zip
127+
mac_arm64_${{ env.RELEASE_TAG }}.zip
128+
env:
129+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
tasks:
2+
- name: permission
3+
executable: xattr
4+
base_dir: .
5+
args:
6+
- -dr
7+
- com.apple.quarantine
8+
- ./jre/bin
9+
healthcheck:
10+
frequency:
11+
delay: 1s
12+
command:
13+
scripts:
14+
- bash
15+
- -c
16+
- 'if [[ $(xattr ./jre/bin/java) == "com.apple.provenance" ]]; then exit 0; else exit 1;fi'
17+
18+
- name: db-detect
19+
executable: bash
20+
depends_on:
21+
- permission
22+
base_dir: .
23+
args:
24+
- -c
25+
- |
26+
rm -f digirunner.args
27+
cat << EOF > digirunner.args
28+
-Dserver.port=31080
29+
-Dspring.datasource.url=jdbc:h2:./db/dgrdb;NON_KEYWORDS=VALUE;Mode=MySQL
30+
EOF
31+
ls ./db/*.db &> /dev/null && echo '-Dspring.sql.init.mode=never' >> digirunner.args || echo '-Dspring.sql.init.mode=always' >> digirunner.args;
32+
healthcheck:
33+
frequency:
34+
delay: 1s
35+
command:
36+
scripts:
37+
- ls
38+
- digirunner.args
39+
- name: digirunner-opensource
40+
executable: jre/bin/java
41+
base_dir: .
42+
depends_on:
43+
- db-detect
44+
args:
45+
- -cp
46+
- ./digirunner/digirunner.jar
47+
- "@digirunner.args"
48+
- org.springframework.boot.loader.launch.PropertiesLauncher

0 commit comments

Comments
 (0)