diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 273a2f544..9a63af9a4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -18,12 +18,11 @@ jobs: steps: - uses: actions/checkout@v3 + - name: Decode google-services.json + run: echo ${{ secrets.GOOGLE_SERVICES }} | base64 -d >> app/google-services.json + - name: Decode Keystore - id: decode_keystore - uses: timheuer/base64-to-file@v1 - with: - fileName: 'Key/music-debug.jks' - encodedString: ${{ secrets.KEYSTORE }} + run: echo ${{ secrets.KEYSTORE }} | base64 -d >> app/music-debug.jks - name: set up JDK 11 uses: actions/setup-java@v3 @@ -35,9 +34,8 @@ jobs: - name: Build debug APK and run jvm tests run: ./gradlew assembleDebug lintDebug testDebugUnitTest --stacktrace -DskipFormatKtlint env: - MUSIC_DEBUG_KEYSTORE_FILE: 'Key/music-debug.jks' + MUSIC_DEBUG_KEYSTORE_FILE: 'music-debug.jks' MUSIC_DEBUG_SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} - MUSIC_DEBUG_SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }} MUSIC_DEBUG_SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }} - name: Upload APK diff --git a/.github/workflows/build_pr.yml b/.github/workflows/build_pr.yml index e2b0d83d1..6fafe23f7 100644 --- a/.github/workflows/build_pr.yml +++ b/.github/workflows/build_pr.yml @@ -19,6 +19,8 @@ jobs: - name: Build debug APK and run jvm tests run: ./gradlew assembleDebug lintDebug testDebugUnitTest --stacktrace -DskipFormatKtlint + env: + PULL_REQUEST: 'true' - name: Upload APK uses: actions/upload-artifact@v3 diff --git a/.gitignore b/.gitignore index 7a638a3dd..ecfc60f0e 100755 --- a/.gitignore +++ b/.gitignore @@ -61,7 +61,7 @@ captures/ .cxx/ # Google Services (e.g. APIs or Firebase) -# google-services.json +google-services.json # Freeline freeline.py diff --git a/app/build.gradle.kts b/app/build.gradle.kts index eea305491..d47ac11b3 100755 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -6,6 +6,9 @@ plugins { kotlin("kapt") id("com.google.dagger.hilt.android") id("com.google.devtools.ksp") + if (System.getenv("PULL_REQUEST") == null) { + id("com.google.gms.google-services") + } } android { @@ -35,12 +38,9 @@ android { signingConfigs { getByName("debug") { if (System.getenv("MUSIC_DEBUG_SIGNING_STORE_PASSWORD") != null) { - val tmpFilePath = System.getProperty("user.home") + "/work/_temp/Key/" - val allFilesFromDir = File(tmpFilePath).listFiles() - val keystoreFile = allFilesFromDir?.first() - storeFile = keystoreFile ?: file(System.getenv("MUSIC_DEBUG_KEYSTORE_FILE")) + storeFile = file(System.getenv("MUSIC_DEBUG_KEYSTORE_FILE")) storePassword = System.getenv("MUSIC_DEBUG_SIGNING_STORE_PASSWORD") - keyAlias = System.getenv("MUSIC_DEBUG_SIGNING_KEY_ALIAS") + keyAlias = "debug" keyPassword = System.getenv("MUSIC_DEBUG_SIGNING_KEY_PASSWORD") } } @@ -124,5 +124,8 @@ dependencies { coreLibraryDesugaring(libs.desugaring) + implementation(platform(libs.firebase.bom)) + implementation(libs.firebase.analytics) + implementation(libs.timber) } diff --git a/build.gradle.kts b/build.gradle.kts index 42d159bfa..e104fe9ad 100755 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -12,6 +12,7 @@ buildscript { dependencies { classpath(libs.gradle) classpath(kotlin("gradle-plugin", libs.versions.kotlin.get())) + classpath(libs.google.services) } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 002915e6f..b5a160386 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,6 @@ [versions] androidGradlePlugin = "7.4.2" +googleServices = "4.3.15" kotlin = "1.8.0" compose-compiler = "1.4.0" compose = "1.3.3" @@ -74,5 +75,9 @@ junit = { group = "junit", name = "junit", version = "4.13.2" } timber = { group = "com.jakewharton.timber", name = "timber", version = "4.7.1" } +google-services = { module = "com.google.gms:google-services", version.ref = "googleServices" } +firebase-bom = { group = "com.google.firebase", name = "firebase-bom", version = "32.2.0" } +firebase-analytics = { group = "com.google.firebase", name = "firebase-analytics-ktx" } + [plugins] kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } \ No newline at end of file