Skip to content

Dark mode (day/night) #497

Dark mode (day/night)

Dark mode (day/night) #497

Workflow file for this run

name: CI Build
on:
push: {}
pull_request:
branches: [master]
workflow_call:
env:
GOOGLE_SERVICES: |
{
"project_info": {
"project_number": "679335683580",
"project_id": "gnucash-pocket",
"storage_bucket": "gnucash-pocket.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:679335683580:android:4a7289ff6df3b6d0e7fe79",
"android_client_info": {
"package_name": "org.gnucash.pocket"
}
},
"oauth_client": [
{
"client_id": "679335683580-9k138m2htltj52u018gqetisuf6fj3ca.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyD3DWSMPA3bE2fm6vChbGy6o_fNYRLCCsQ"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "679335683580-9k138m2htltj52u018gqetisuf6fj3ca.apps.googleusercontent.com",
"client_type": 3
}
]
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:679335683580:android:b7412dd4e5dddc59e7fe79",
"android_client_info": {
"package_name": "org.gnucash.pocket.devel"
}
},
"oauth_client": [
{
"client_id": "679335683580-9k138m2htltj52u018gqetisuf6fj3ca.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyD3DWSMPA3bE2fm6vChbGy6o_fNYRLCCsQ"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "679335683580-9k138m2htltj52u018gqetisuf6fj3ca.apps.googleusercontent.com",
"client_type": 3
}
]
}
}
}
],
"configuration_version": "1"
}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Prepare Java
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: temurin
- name: Prepare Gradle
uses: gradle/actions/setup-gradle@v3
- name: Prepare Google Services
run: echo $GOOGLE_SERVICES > app/google-services.json
env:
GOOGLE_SERVICES: ${{ env.GOOGLE_SERVICES }}
- name: Build Application APK
run: ./gradlew assembleDevelopmentDebug
- name: Rename Application APK
run: cp app/build/outputs/apk/development/debug/*.apk application.apk
- name: Upload Application APK
uses: actions/upload-artifact@v4
with:
name: application-apk
path: application.apk
if-no-files-found: error
unit-test:
runs-on: ubuntu-latest
needs: build
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Prepare Java
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: temurin
- name: Prepare Gradle
uses: gradle/actions/setup-gradle@v3
- name: Prepare Google Services
run: echo $GOOGLE_SERVICES > app/google-services.json
env:
GOOGLE_SERVICES: ${{ env.GOOGLE_SERVICES }}
- name: Run Unit Tests
run: ./gradlew testDevelopmentDebugUnitTest
- name: Unit Test Summary
uses: test-summary/action@v2
if: always()
with:
paths: app/build/test-results/testDevelopmentDebugUnitTest/TEST-*.xml
- name: Upload Unit Test Results for Report
uses: actions/upload-artifact@v4
if: always()
with:
name: unit-test-results
path: app/build/test-results/testDevelopmentDebugUnitTest/TEST-*.xml
if-no-files-found: error
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Prepare Java
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: temurin
- name: Prepare Gradle
uses: gradle/actions/setup-gradle@v3
- name: Prepare Google Services
run: echo $GOOGLE_SERVICES > app/google-services.json
env:
GOOGLE_SERVICES: ${{ env.GOOGLE_SERVICES }}
- name: Run Linter
run: ./gradlew lintDevelopmentDebug
instrumentation-build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Prepare Java
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: temurin
- name: Prepare Gradle
uses: gradle/actions/setup-gradle@v3
- name: Prepare Google Services
run: echo $GOOGLE_SERVICES > app/google-services.json
env:
GOOGLE_SERVICES: ${{ env.GOOGLE_SERVICES }}
- name: Build Instrumentation APK
run: ./gradlew assembleDevelopmentDebugAndroidTest
- name: Rename Instrumentation APK
run: cp app/build/outputs/apk/androidTest/development/debug/*.apk instrumentation.apk
- name: Upload Instrumentation APK
uses: actions/upload-artifact@v4
with:
name: instrumentation-apk
path: instrumentation.apk
if-no-files-found: error