forked from PojavLauncherTeam/PojavLauncher
-
Notifications
You must be signed in to change notification settings - Fork 9
138 lines (120 loc) · 4.46 KB
/
android.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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
name: Android CI
on:
pull_request:
branches-ignore:
- 'l10n_v3_openjdk2'
push:
branches-ignore:
- 'l10n_v3_openjdk2'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-20.04
env:
GPLAY_KEYSTORE_PASSWORD: ${{ secrets.GPLAY_KEYSTORE_PASSWORD }}
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Get gl4es latest commit hash
id: gl4es-sha
run: echo "::set-output name=sha::$(echo $(git ls-remote https://github.com/PojavLauncherTeam/gl4es-114-extra refs/heads/master | grep -io '^\S*'))"
shell: bash
- name: Cache gl4es
uses: actions/cache@v2
id: gl4es-cache
with:
path: gl4es/libs
key: gl4es-holy-android-shared-${{ steps.gl4es-sha.outputs.sha }}
- name: Get gl4es
if: steps.gl4es-cache.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
repository: 'PojavLauncherTeam/gl4es-114-extra'
path: 'gl4es'
- name: Build gl4es
if: steps.gl4es-cache.outputs.cache-hit != 'true'
continue-on-error: true
run: |
cd gl4es
git config --global user.email "[email protected]"
git config --global user.name "github-actions"
$ANDROID_NDK_HOME/ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk
cp -R libs/* ../app_pojavlauncher/src/main/jniLibs/
- name: Push gl4es
if: github.event != 'pull_request' && steps.gl4es-cache.outputs.cache-hit != 'true'
continue-on-error: true
run: |
git add .
git commit -am "CI: Update gl4es"
git push
- name: Get JRE8
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
path: app_pojavlauncher/src/main/assets/components/jre
workflow_conclusion: success
repo: PojavLauncherTeam/android-openjdk-build-multiarch
branch: buildjre8
name: jre8-pojav
- name: Get JRE17
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
path: app_pojavlauncher/src/main/assets/components/jre-new
workflow_conclusion: success
repo: PojavLauncherTeam/android-openjdk-build-multiarch
branch: buildjre17
name: jre17-pojav
- name: Build JRE JAR files
run: |
cp -R gl4es/libs/* app_pojavlauncher/src/main/jniLibs/
chmod +x scripts/languagelist_updater.sh
bash scripts/languagelist_updater.sh
mkdir -p out
chmod +x gradlew
./gradlew clean
# Build JRE JAR files (security manager, etc...)
./gradlew :jre_lwjgl3glfw:build
- name: Build Google Play .aab
if: github.repository_owner == 'PojavLauncherTeam' && github.ref_name == 'v3_openjdk'
run: |
./gradlew :app_pojavlauncher:bundleGplay
mv app_pojavlauncher/build/outputs/bundle/gplay/app_pojavlauncher-gplay.aab out/app-gplay.aab
- name: Build Debug .apk
run: |
# Build the launcher
./gradlew :app_pojavlauncher:assembleDebug
mv app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apk out/app-debug.apk
- name: Build APK without runtime
run: |
rm -r app_pojavlauncher/src/main/assets/components/jre
rm -r app_pojavlauncher/src/main/assets/components/jre-new
./gradlew assembleDebug
mv app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apk out/app-debug-noruntime.apk
- name: Upload APK
uses: actions/upload-artifact@v2
with:
name: app-debug
path: out/app-debug.apk
- name: Upload onto the Google Play testing track
if: github.repository_owner == 'PojavLauncherTeam' && github.ref_name == 'v3_openjdk'
uses: r0adkll/[email protected]
with:
serviceAccountJsonPlainText: ${{ secrets.GPLAY_SERVICE_JSON }}
packageName: net.kdt.pojavlaunch
releaseFiles: out/app-gplay.aab
track: internal
inAppUpdatePriority: 5
changesNotSentForReview: true
- name: Upload APK (without runtime)
uses: actions/upload-artifact@v2
with:
name: app-debug-noruntime
path: out/app-debug-noruntime.apk