Merge pull request #273 from Swent-team-6/feature/endToEnd #94
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Upload Artifacts | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v2 | |
with: | |
distribution: 'temurin' | |
java-version: '17' | |
# Create and populate google-services.json file | |
- name: Create and populate google-services.json | |
run: echo ${{ secrets.GOOGLE_SERVICES }} | base64 --decode > ./app/google-services.json | |
# Create keystore/debug.keystore file | |
- name: Create file debug keystore | |
run: | | |
mkdir -p ./keystore | |
echo "${{ secrets.DEBUG_KEYSTORE }}" | base64 --decode > ./keystore/debug.keystore | |
- name: Grant execute permission for Gradle wrapper | |
run: chmod +x ./gradlew | |
- name: Cache Gradle dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ~/.gradle/caches | |
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} | |
restore-keys: | | |
gradle-${{ runner.os }}- | |
- name: Run tests | |
run: ./gradlew test | |
env: | |
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} | |
KEY_ALIAS: ${{ secrets.KEY_ALIAS }} | |
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} | |
MAPS_API_KEY: ${{ secrets.MAPS_API_KEY }} | |
CHATGPT_API_KEY: ${{ secrets.CHATGPT_API_KEY }} | |
- name: Upload Test Results | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Test Results | |
path: app/build/reports/tests/testDebugUnitTest/ | |
- name: Build the project | |
run: ./gradlew assembleDebug | |
env: | |
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} | |
KEY_ALIAS: ${{ secrets.KEY_ALIAS }} | |
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} | |
MAPS_API_KEY: ${{ secrets.MAPS_API_KEY }} | |
CHATGPT_API_KEY: ${{ secrets.CHATGPT_API_KEY }} | |
- name: Upload APK | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Debug APK | |
path: app/build/outputs/apk/debug/*.apk |