From faae6b61aa978a6aa05c9ee7b9a7e32923d67c96 Mon Sep 17 00:00:00 2001 From: Justin Guo Date: Wed, 13 Nov 2024 22:13:42 -0500 Subject: [PATCH 1/5] Add secrets URL changing --- .gitignore | 3 +++ app/build.gradle | 14 ++++++++++++-- .../uplift/networking/UpliftApiRepository.kt | 5 +++-- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 56cc642..8960b63 100644 --- a/.gitignore +++ b/.gitignore @@ -44,6 +44,7 @@ captures/ .idea/assetWizardSettings.xml .idea/dictionaries .idea/libraries +.idea/* # Android Studio 3 in .gitignore file. .idea/caches .idea/modules.xml @@ -83,3 +84,5 @@ lint/generated/ lint/outputs/ lint/tmp/ # lint/reports/ + +secrets.properties diff --git a/app/build.gradle b/app/build.gradle index 87fd6c3..9b8e457 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -4,6 +4,10 @@ plugins { id "com.apollographql.apollo3" version "3.8.2" } +def secretsPropertiesFile = rootProject.file('secrets.properties') +def secretsProperties = new Properties() +secretsProperties.load(new FileInputStream(secretsPropertiesFile)) + android { namespace 'com.cornellappdev.uplift' compileSdk 35 @@ -12,8 +16,8 @@ android { applicationId "com.cornellappdev.uplift" minSdk 28 targetSdk 35 - versionCode 10 - versionName "1.4" + versionCode 12 + versionName "1.4-backend-fix" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { @@ -22,9 +26,14 @@ android { } buildTypes { + debug { + buildConfigField("String", "BACKEND_URL", secretsProperties['DEV_ENDPOINT']) + } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.debug + buildConfigField("String", "BACKEND_URL", secretsProperties['PROD_ENDPOINT']) } } compileOptions { @@ -37,6 +46,7 @@ android { } buildFeatures { compose true + buildConfig true } composeOptions { kotlinCompilerExtensionVersion '1.5.3' diff --git a/app/src/main/java/com/cornellappdev/uplift/networking/UpliftApiRepository.kt b/app/src/main/java/com/cornellappdev/uplift/networking/UpliftApiRepository.kt index 8bbc389..862ac94 100644 --- a/app/src/main/java/com/cornellappdev/uplift/networking/UpliftApiRepository.kt +++ b/app/src/main/java/com/cornellappdev/uplift/networking/UpliftApiRepository.kt @@ -2,6 +2,7 @@ package com.cornellappdev.uplift.networking import android.util.Log import com.apollographql.apollo3.ApolloClient +import com.cornellappdev.uplift.BuildConfig import com.cornellappdev.uplift.ClassListQuery import com.cornellappdev.uplift.GymListQuery import com.cornellappdev.uplift.models.UpliftClass @@ -28,8 +29,8 @@ import kotlinx.coroutines.launch */ object UpliftApiRepository { private val apolloClient = ApolloClient.Builder() -// .serverUrl("https://uplift-backend.cornellappdev.com/graphql") - .serverUrl("https://uplift-dev.cornellappdev.com/graphql") + .serverUrl(BuildConfig.BACKEND_URL) + .apply { Log.d("helpme", "server url: ${BuildConfig.BACKEND_URL}") } .build() private val gymQuery = apolloClient.query(GymListQuery()) From 0210b7cb894fa93c86e3937fb23c40b48a275626 Mon Sep 17 00:00:00 2001 From: Justin Guo Date: Wed, 13 Nov 2024 22:23:55 -0500 Subject: [PATCH 2/5] Change workflows to include caching and secrets properties --- .../workflows/publish-to-play-store-beta.yml | 12 ++++++ .github/workflows/publish-to-play-store.yml | 12 ++++++ .idea/compiler.xml | 2 +- .idea/inspectionProfiles/Project_Default.xml | 33 +++++++++++++++++ .idea/misc.xml | 4 +- app/release/output-metadata.json | 37 +++++++++++++++++++ gradle.properties | 1 + secrets.properties | 4 ++ 8 files changed, 102 insertions(+), 3 deletions(-) create mode 100644 app/release/output-metadata.json create mode 100644 secrets.properties diff --git a/.github/workflows/publish-to-play-store-beta.yml b/.github/workflows/publish-to-play-store-beta.yml index b0e760c..200c5b4 100644 --- a/.github/workflows/publish-to-play-store-beta.yml +++ b/.github/workflows/publish-to-play-store-beta.yml @@ -21,6 +21,18 @@ jobs: java-version: '17' distribution: 'temurin' + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + with: + gradle-version: wrapper + cache-read-only: false + + - name: Create secrets.properties + run: | + echo "${{ secrets.SECRETS_PROPERTIES }}" > secrets.properties + + # TODO: Add google services json + - name: Build with Gradle id: build run: ./gradlew build diff --git a/.github/workflows/publish-to-play-store.yml b/.github/workflows/publish-to-play-store.yml index 455daa4..a4b1359 100644 --- a/.github/workflows/publish-to-play-store.yml +++ b/.github/workflows/publish-to-play-store.yml @@ -21,6 +21,18 @@ jobs: java-version: '17' distribution: 'temurin' + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + with: + gradle-version: wrapper + cache-read-only: false + + - name: Create secrets.properties + run: | + echo "${{ secrets.SECRETS_PROPERTIES }}" > secrets.properties + + # TODO: Add google services json + - name: Build with Gradle id: build run: ./gradlew build diff --git a/.idea/compiler.xml b/.idea/compiler.xml index b589d56..b86273d 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index d7cb58b..e0da3ee 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -1,12 +1,45 @@