66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| #file: noinspection SpellCheckingInspection
 | |
| 
 | |
| name: CI-Android APK
 | |
| 
 | |
| env:
 | |
|   main_project_module: app
 | |
|   playstore_name: KeepassFidelity
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches: [ main ]
 | |
|     tags:
 | |
|       - '**'
 | |
|   pull_request:
 | |
|     branches: [ main ]
 | |
|   workflow_dispatch:
 | |
| 
 | |
| # A workflow run is made up of one or more jobs that can run sequentially or in parallel
 | |
| jobs:
 | |
|   build:
 | |
|     runs-on: ubuntu-latest
 | |
|     permissions:
 | |
|       contents: write
 | |
| 
 | |
|     steps:
 | |
|       - uses: actions/checkout@v5
 | |
|         with:
 | |
|           submodules: true
 | |
|       - name: set up secrets
 | |
|         run: |
 | |
|           echo "${{ secrets.RELEASE_KEYSTORE }}" > keystore.asc
 | |
|           echo "${{ secrets.RELEASE_KEY}}" > key.asc
 | |
|           gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch keystore.asc > app/keystore.properties
 | |
|           gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch key.asc > app/key.jks
 | |
| 
 | |
|       - uses: gradle/wrapper-validation-action@v3
 | |
| 
 | |
|       - name: create and checkout branch
 | |
|         if: github.event_name == 'pull_request'
 | |
|         env:
 | |
|           BRANCH: ${{ github.head_ref }}
 | |
|         run: git checkout -B "$BRANCH"
 | |
| 
 | |
|       - name: set up JDK
 | |
|         uses: actions/setup-java@v5
 | |
|         with:
 | |
|           java-version: 17
 | |
|           distribution: "temurin"
 | |
|           cache: 'gradle'
 | |
| 
 | |
|       - name: Build APK
 | |
|         run: ./gradlew assemble
 | |
| 
 | |
|       # - name: Upload APK
 | |
|       #   uses: actions/upload-artifact@v4
 | |
|       #   with:
 | |
|       #     name: app.apk
 | |
|       #     path: app/build/outputs/apk/release/app-release.apk
 | |
| 
 | |
|       - name: Release
 | |
|         uses: softprops/action-gh-release@v2
 | |
|         if: startsWith(github.ref, 'refs/tags/')
 | |
|         with:
 | |
|           files: |
 | |
|             app/build/outputs/apk/release/app-release.apk
 |