diff --git a/.github/actions/androidapp-road-test/action.yml b/.github/actions/androidapp-road-test/action.yml index 3acb2ea0..46ec284e 100644 --- a/.github/actions/androidapp-road-test/action.yml +++ b/.github/actions/androidapp-road-test/action.yml @@ -65,12 +65,24 @@ runs: yarn run brownfield:publish:android shell: bash + - name: Resolve AAR variants + id: aar-variants + run: | + if [[ "${{ inputs.flavor }}" == "vanilla" ]]; then + echo "debug=devDebug" >> "$GITHUB_OUTPUT" + echo "release=devRelease" >> "$GITHUB_OUTPUT" + else + echo "debug=debug" >> "$GITHUB_OUTPUT" + echo "release=release" >> "$GITHUB_OUTPUT" + fi + shell: bash + - name: Verify debug AAR exists in Maven Local - run: stat ~/.m2/repository/${{ inputs.rn-project-maven-path }}/0.0.1-SNAPSHOT/brownfieldlib-0.0.1-SNAPSHOT-debug.aar + run: stat ~/.m2/repository/${{ inputs.rn-project-maven-path }}/0.0.1-SNAPSHOT/brownfieldlib-0.0.1-SNAPSHOT-${{ steps.aar-variants.outputs.debug }}.aar shell: bash - name: Verify release AAR exists in Maven Local - run: stat ~/.m2/repository/${{ inputs.rn-project-maven-path }}/0.0.1-SNAPSHOT/brownfieldlib-0.0.1-SNAPSHOT-release.aar + run: stat ~/.m2/repository/${{ inputs.rn-project-maven-path }}/0.0.1-SNAPSHOT/brownfieldlib-0.0.1-SNAPSHOT-${{ steps.aar-variants.outputs.release }}.aar shell: bash # clean up build artifacts to ensure no ENOSPC diff --git a/apps/AndroidApp/app/build.gradle.kts b/apps/AndroidApp/app/build.gradle.kts index d32b6717..ce3fd9b8 100644 --- a/apps/AndroidApp/app/build.gradle.kts +++ b/apps/AndroidApp/app/build.gradle.kts @@ -25,6 +25,7 @@ android { versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + missingDimensionStrategy("env", "dev") } flavorDimensions += "app" diff --git a/apps/RNApp/.gitignore b/apps/RNApp/.gitignore index b4a457ea..b28a2330 100644 --- a/apps/RNApp/.gitignore +++ b/apps/RNApp/.gitignore @@ -75,8 +75,8 @@ yarn-error.log !.yarn/versions # Brownfield -android/BrownfieldLib/libsDebug/ -android/BrownfieldLib/libsRelease/ +android/BrownfieldLib/libs*Debug/ +android/BrownfieldLib/libs*Release/ # Benchmarks android/gradle-user-home/ diff --git a/apps/RNApp/android/BrownfieldLib/build.gradle.kts b/apps/RNApp/android/BrownfieldLib/build.gradle.kts index 019236ec..aadad58d 100644 --- a/apps/RNApp/android/BrownfieldLib/build.gradle.kts +++ b/apps/RNApp/android/BrownfieldLib/build.gradle.kts @@ -101,6 +101,17 @@ android { ) } } + + flavorDimensions += "env" + productFlavors { + create("prod") { + dimension = "env" + } + create("dev") { + dimension = "env" + } + } + compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 diff --git a/apps/RNApp/android/app/build.gradle b/apps/RNApp/android/app/build.gradle index 3d43d51f..6b10aa8d 100644 --- a/apps/RNApp/android/app/build.gradle +++ b/apps/RNApp/android/app/build.gradle @@ -105,6 +105,15 @@ android { proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" } } + flavorDimensions "env" + productFlavors { + prod { + dimension "env" + } + dev { + dimension "env" + } + } } dependencies { diff --git a/apps/RNApp/package.json b/apps/RNApp/package.json index aa4a40c4..218e78df 100644 --- a/apps/RNApp/package.json +++ b/apps/RNApp/package.json @@ -7,7 +7,7 @@ "ios": "yarn brownfield:package:ios && brownfield codegen && react-native run-ios", "build:example:android-rn": "react-native build-android", "build:example:ios-rn": "react-native build-ios", - "brownfield:package:android": "brownfield package:android --module-name :BrownfieldLib --variant release --verbose", + "brownfield:package:android": "brownfield package:android --module-name :BrownfieldLib --variant devRelease --verbose", "brownfield:publish:android": "brownfield publish:android --module-name :BrownfieldLib --verbose", "brownfield:package:ios": "brownfield package:ios --scheme BrownfieldLib --configuration Release --verbose", "lint": "eslint .", diff --git a/gradle-plugins/react/README.md b/gradle-plugins/react/README.md index d3ed14ed..4e4616c7 100644 --- a/gradle-plugins/react/README.md +++ b/gradle-plugins/react/README.md @@ -199,6 +199,27 @@ reactBrownfield {