fix: use release keystore in CI when RELEASE_STORE_FILE is set

The build.gradle now reads RELEASE_STORE_FILE, RELEASE_STORE_PASSWORD,
RELEASE_KEY_ALIAS, and RELEASE_KEY_PASSWORD env vars for release signing.
Falls back to debug keystore for local development.

Also updates whatsnew for v0.4.1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
engineer
2026-05-28 00:20:21 -07:00
parent 88bde78b10
commit 7ec3461304
2 changed files with 13 additions and 10 deletions

View File

@@ -81,6 +81,8 @@ def enableMinifyInReleaseBuilds = (findProperty('android.enableMinifyInReleaseBu
*/
def jscFlavor = 'io.github.react-native-community:jsc-android:2026004.+'
apply from: new File(["node", "--print", "require('path').dirname(require.resolve('@sentry/react-native/package.json'))"].execute().text.trim(), "sentry.gradle")
android {
ndkVersion rootProject.ext.ndkVersion
@@ -92,8 +94,8 @@ android {
applicationId 'ai.opencode.mobile'
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0.0"
versionCode 4
versionName "0.4.1"
buildConfigField "String", "REACT_NATIVE_RELEASE_LEVEL", "\"${findProperty('reactNativeReleaseLevel') ?: 'stable'}\""
}
@@ -104,8 +106,8 @@ android {
keyAlias 'androiddebugkey'
keyPassword 'android'
}
release {
if (System.getenv("RELEASE_STORE_FILE")) {
if (System.getenv("RELEASE_STORE_FILE")) {
release {
storeFile file(System.getenv("RELEASE_STORE_FILE"))
storePassword System.getenv("RELEASE_STORE_PASSWORD")
keyAlias System.getenv("RELEASE_KEY_ALIAS")
@@ -118,7 +120,7 @@ android {
signingConfig signingConfigs.debug
}
release {
signingConfig System.getenv("RELEASE_STORE_FILE") ? signingConfigs.release : signingConfigs.debug
signingConfig signingConfigs.findByName('release') ?: signingConfigs.debug
def enableShrinkResources = findProperty('android.enableShrinkResourcesInReleaseBuilds') ?: 'false'
shrinkResources enableShrinkResources.toBoolean()
minifyEnabled enableMinifyInReleaseBuilds