@@ -18,39 +18,55 @@ jobs:
18
18
with :
19
19
format : YYYYMMDD-HH
20
20
utcOffset : " +08:00"
21
- - uses : actions/checkout@v2
21
+ - uses : actions/checkout@v4
22
22
with :
23
23
submodules : recursive
24
- - name : Decode Keystore
25
- env :
26
- ENCODED_STRING : ${{ secrets.SIGNING_STORE_BASE64 }}
27
- run : echo $ENCODED_STRING | base64 -di > app/keystore.jks
28
- - uses : AdoptOpenJDK/install-jdk@v1
24
+ - name : Install dependencies
25
+ run : |
26
+ sudo apt-get update
27
+ sudo apt-get install -y libarchive-zip-perl
28
+ - name : Decode proguard rules
29
+ uses : mobiledevops/secret-to-file-action@v1
29
30
with :
30
- version : ' 17'
31
- architecture : x64
31
+ base64-encoded-secret : ${{ secrets.PROGUARD_RULES }}
32
+ filename : " app/proguard-rules.pro"
33
+ - name : Decode keystore
34
+ uses : mobiledevops/secret-to-file-action@v1
35
+ with :
36
+ base64-encoded-secret : ${{ secrets.SIGNING_STORE_BASE64 }}
37
+ filename : " app/keystore.jks"
32
38
- uses : AdoptOpenJDK/install-jdk@v1
33
39
with :
34
- version : ' 15 '
40
+ version : ' 17 '
35
41
architecture : x64
36
- targets : ' JAVA_HOME_15'
37
42
- name : Build Riru modules
38
43
run : cd ./module && bash ./make.sh
44
+ env :
45
+ BUILD_RELEASE_MINIFYENABLED : ${{ vars.BUILD_RELEASE_MINIFYENABLED }}
46
+ SIGNING_KEY_ALIAS : ${{ secrets.SIGNING_KEY_ALIAS }}
47
+ SIGNING_KEY_PASSWORD : ${{ secrets.SIGNING_KEY_PASSWORD }}
48
+ SIGNING_STORE_PASSWORD : ${{ secrets.SIGNING_STORE_PASSWORD }}
39
49
- name : Grant execute permission for gradlew
40
50
run : chmod +x gradlew
41
51
- name : Build with Gradle
42
- run : ./gradlew clean ":app:assembleRelease"
52
+ run : ./gradlew clean && ./gradlew ":app:assembleRelease" -Pxposed=true
43
53
env :
54
+ BUILD_RELEASE_MINIFYENABLED : ${{ vars.BUILD_RELEASE_MINIFYENABLED }}
44
55
SIGNING_KEY_ALIAS : ${{ secrets.SIGNING_KEY_ALIAS }}
45
56
SIGNING_KEY_PASSWORD : ${{ secrets.SIGNING_KEY_PASSWORD }}
46
57
SIGNING_STORE_PASSWORD : ${{ secrets.SIGNING_STORE_PASSWORD }}
47
58
- name : Upload Apk
48
- uses : actions/upload-artifact@v2.2.0
59
+ uses : actions/upload-artifact@v4
49
60
with :
50
61
name : xposed.${{ steps.current-time.outputs.formattedTime }}
51
62
path : app/build/outputs/apk/release/*.apk
63
+ - name : Upload Mapping
64
+ uses : actions/upload-artifact@v4
65
+ with :
66
+ name : mapping.${{ steps.current-time.outputs.formattedTime }}
67
+ path : app/build/outputs/apk/mapping/release
52
68
- name : Upload Riru Modules
53
- uses : actions/upload-artifact@v2.2.0
69
+ uses : actions/upload-artifact@v4
54
70
with :
55
71
name : magisk.${{ steps.current-time.outputs.formattedTime }}
56
72
path : |
76
92
app/build/outputs/apk/release/*.apk
77
93
module/build/release/*.zip
78
94
body : " [Github Action](https://github.com/${{github.repository}}/actions/runs/${{github.run_id}})"
95
+ - name : Check WebDAV credentials
96
+ id : check-webdav
97
+ run : |
98
+ if [[ -n "${{ secrets.WEBDAV_ADDRESS }}" && -n "${{ secrets.WEBDAV_USERNAME }}" && -n "${{ secrets.WEBDAV_PASSWORD }}" ]]; then
99
+ echo "webdav_available=true" >> $GITHUB_OUTPUT
100
+ echo "WebDAV credentials are available"
101
+ else
102
+ echo "webdav_available=false" >> $GITHUB_OUTPUT
103
+ echo "WebDAV credentials are missing or incomplete"
104
+ fi
79
105
- name : Upload artifacts - Xposed
106
+ if : steps.check-webdav.outputs.webdav_available == 'true'
80
107
uses : Wandalen/wretry.action@master
81
108
with :
82
109
action : bxb100/action-upload@main
92
119
attempt_limit : 3
93
120
attempt_delay : 0
94
121
- name : Upload artifacts - Zygisk
122
+ if : steps.check-webdav.outputs.webdav_available == 'true'
95
123
uses : Wandalen/wretry.action@master
96
124
with :
97
125
action : bxb100/action-upload@main
@@ -107,6 +135,7 @@ jobs:
107
135
attempt_limit : 3
108
136
attempt_delay : 0
109
137
- name : Upload artifacts - Riru
138
+ if : steps.check-webdav.outputs.webdav_available == 'true'
110
139
uses : Wandalen/wretry.action@master
111
140
with :
112
141
action : bxb100/action-upload@main
0 commit comments