CI: add Android build systems
This commit is contained in:
		
							
								
								
									
										12
									
								
								.ci/scripts/android/build.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								.ci/scripts/android/build.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| #!/bin/bash -ex | ||||
|  | ||||
| export NDK_CCACHE="$(which ccache)" | ||||
| ccache -s | ||||
|  | ||||
| BUILD_FLAVOR=mainline | ||||
|  | ||||
| cd src/android | ||||
| chmod +x ./gradlew | ||||
| ./gradlew "assemble${BUILD_FLAVOR}Release" "bundle${BUILD_FLAVOR}Release" | ||||
|  | ||||
| ccache -s | ||||
							
								
								
									
										24
									
								
								.ci/scripts/android/upload.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								.ci/scripts/android/upload.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| #!/bin/bash -ex | ||||
|  | ||||
| . ./.ci/scripts/common/pre-upload.sh | ||||
|  | ||||
| REV_NAME="yuzu-${GITDATE}-${GITREV}" | ||||
|  | ||||
| BUILD_FLAVOR=mainline | ||||
|  | ||||
| cp src/android/app/build/outputs/apk/"${BUILD_FLAVOR}/release/app-${BUILD_FLAVOR}-release.apk" \ | ||||
|   "artifacts/${REV_NAME}.apk" | ||||
| cp src/android/app/build/outputs/bundle/"${BUILD_FLAVOR}Release"/"app-${BUILD_FLAVOR}-release.aab" \ | ||||
|   "artifacts/${REV_NAME}.aab" | ||||
|  | ||||
| if [ -n "${ANDROID_KEYSTORE_B64}" ] | ||||
| then | ||||
|   echo "Signing apk..." | ||||
|   base64 --decode <<< "${ANDROID_KEYSTORE_B64}" > ks.jks | ||||
|  | ||||
|   apksigner sign --ks ks.jks \ | ||||
|     --ks-key-alias "${ANDROID_KEY_ALIAS}" \ | ||||
|     --ks-pass env:ANDROID_KEYSTORE_PASS "artifacts/${REV_NAME}.apk" | ||||
| else | ||||
|   echo "No keystore specified, not signing the APK files." | ||||
| fi | ||||
							
								
								
									
										38
									
								
								.github/workflows/verify.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										38
									
								
								.github/workflows/verify.yml
									
									
									
									
										vendored
									
									
								
							| @@ -122,3 +122,41 @@ jobs: | ||||
|         with: | ||||
|           name: ${{ env.INDIVIDUAL_EXE }} | ||||
|           path: ${{ env.INDIVIDUAL_EXE }} | ||||
|   android: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: format | ||||
|     steps: | ||||
|       - uses: actions/checkout@v3 | ||||
|         with: | ||||
|           submodules: recursive | ||||
|       - name: Set up cache | ||||
|         uses: actions/cache@v3 | ||||
|         with: | ||||
|           path: | | ||||
|             ~/.gradle/caches | ||||
|             ~/.gradle/wrapper | ||||
|             ~/.ccache | ||||
|           key: ${{ runner.os }}-android-${{ github.sha }} | ||||
|           restore-keys: | | ||||
|             ${{ runner.os }}-android- | ||||
|       - name: Query tag name | ||||
|         uses: little-core-labs/get-git-tag@v3.0.2 | ||||
|         id: tagName | ||||
|       - name: Install dependencies | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install -y ccache apksigner glslang-dev glslang-tools | ||||
|           git -C ./externals/vcpkg/ fetch --all --unshallow | ||||
|       - name: Build | ||||
|         run: ./.ci/scripts/android/build.sh | ||||
|       - name: Copy and sign artifacts | ||||
|         env: | ||||
|           ANDROID_KEYSTORE_B64: ${{ secrets.ANDROID_KEYSTORE_B64 }} | ||||
|           ANDROID_KEY_ALIAS: ${{ secrets.ANDROID_KEY_ALIAS }} | ||||
|           ANDROID_KEYSTORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASS }} | ||||
|         run: ./.ci/scripts/android/upload.sh | ||||
|       - name: Upload | ||||
|         uses: actions/upload-artifact@v3 | ||||
|         with: | ||||
|           name: android | ||||
|           path: artifacts/ | ||||
|   | ||||
							
								
								
									
										0
									
								
								src/android/gradlew
									
									
									
									
										vendored
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										0
									
								
								src/android/gradlew
									
									
									
									
										vendored
									
									
										
										
										Normal file → Executable file
									
								
							
		Reference in New Issue
	
	Block a user
	 liushuyu
					liushuyu