diff --git a/.github/workflows/gradle-plugin-lint.yml b/.github/workflows/gradle-plugin-lint.yml index 8eb4fcdd..39264e96 100644 --- a/.github/workflows/gradle-plugin-lint.yml +++ b/.github/workflows/gradle-plugin-lint.yml @@ -32,9 +32,9 @@ jobs: ${{ runner.os }}-gradle- - name: Run Detekt - working-directory: gradle-plugins/react - run: ./gradlew :brownfield:detekt --no-daemon --stacktrace + working-directory: gradle-plugins/react/brownfield + run: ./gradlew detekt --no-daemon --stacktrace - name: Run KtLint - working-directory: gradle-plugins/react - run: ./gradlew :brownfield:ktlintCheck --no-daemon --stacktrace + working-directory: gradle-plugins/react/brownfield + run: ./gradlew ktlintCheck --no-daemon --stacktrace diff --git a/.github/workflows/release-brownfield-gradle-plugin.yml b/.github/workflows/release-brownfield-gradle-plugin.yml index f346e745..b4d0828a 100644 --- a/.github/workflows/release-brownfield-gradle-plugin.yml +++ b/.github/workflows/release-brownfield-gradle-plugin.yml @@ -97,9 +97,9 @@ jobs: --output out/jreleaser/brownfield-gradle-plugin-release-notes.md - name: Stage Maven release artifacts - working-directory: gradle-plugins/react + working-directory: gradle-plugins/react/brownfield run: | - ./gradlew :brownfield:publishMavenLocalPublicationToReleaseStagingRepository \ + ./gradlew publishMavenLocalPublicationToReleaseStagingRepository \ -PSkipSigning=true \ --no-daemon \ --stacktrace diff --git a/gradle-plugins/publish-to-maven-local.sh b/gradle-plugins/publish-to-maven-local.sh index 5f12f1f9..a7f08e03 100755 --- a/gradle-plugins/publish-to-maven-local.sh +++ b/gradle-plugins/publish-to-maven-local.sh @@ -2,13 +2,13 @@ set -e -cd ./gradle-plugins/react +cd ./gradle-plugins/react/brownfield ./gradlew clean if [ "$1" == "--skip-signing" ]; then ./gradlew build - ./gradlew :brownfield:publishMavenLocalPublicationToMavenLocalRepository -PSkipSigning=true -PIS_SNAPSHOT=true + ./gradlew publishMavenLocalPublicationToMavenLocalRepository -PSkipSigning=true -PIS_SNAPSHOT=true else ./gradlew build - ./gradlew :brownfield:publishMavenLocalPublicationToMavenLocalRepository + ./gradlew publishMavenLocalPublicationToMavenLocalRepository fi diff --git a/gradle-plugins/react/README.md b/gradle-plugins/react/README.md index dc3ec675..c1211273 100644 --- a/gradle-plugins/react/README.md +++ b/gradle-plugins/react/README.md @@ -156,7 +156,7 @@ reactBrownfield { ## Tooling - We are using `ktlint` and `detekt` for formatting and linting -- You can run `./gradlew :brownfield:lint` to auto-format and detect linting issues, or use the root workspace script `yarn run gradle-plugin:lint` +- You can run `./brownfield/gradlew -p brownfield detekt ktlintFormat` to auto-format and detect linting issues, or use the root workspace script `yarn run gradle-plugin:lint` - Maintainers should use [PUBLISHING.md](./PUBLISHING.md) for the release workflow, release notes generation, and Maven Central publication process ## Architecture diff --git a/gradle-plugins/react/gradle/libs.versions.toml b/gradle-plugins/react/brownfield/gradle/libs.versions.toml similarity index 100% rename from gradle-plugins/react/gradle/libs.versions.toml rename to gradle-plugins/react/brownfield/gradle/libs.versions.toml diff --git a/gradle-plugins/react/gradle/wrapper/gradle-wrapper.jar b/gradle-plugins/react/brownfield/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from gradle-plugins/react/gradle/wrapper/gradle-wrapper.jar rename to gradle-plugins/react/brownfield/gradle/wrapper/gradle-wrapper.jar diff --git a/gradle-plugins/react/gradle/wrapper/gradle-wrapper.properties b/gradle-plugins/react/brownfield/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from gradle-plugins/react/gradle/wrapper/gradle-wrapper.properties rename to gradle-plugins/react/brownfield/gradle/wrapper/gradle-wrapper.properties diff --git a/gradle-plugins/react/gradlew b/gradle-plugins/react/brownfield/gradlew similarity index 100% rename from gradle-plugins/react/gradlew rename to gradle-plugins/react/brownfield/gradlew diff --git a/gradle-plugins/react/gradlew.bat b/gradle-plugins/react/brownfield/gradlew.bat similarity index 100% rename from gradle-plugins/react/gradlew.bat rename to gradle-plugins/react/brownfield/gradlew.bat diff --git a/gradle-plugins/react/brownfield/settings.gradle b/gradle-plugins/react/brownfield/settings.gradle deleted file mode 100644 index b5a0fabf..00000000 --- a/gradle-plugins/react/brownfield/settings.gradle +++ /dev/null @@ -1,7 +0,0 @@ -dependencyResolutionManagement { - versionCatalogs { - create("libs") { - from(files("../gradle/libs.versions.toml")) - } - } -} diff --git a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/artifacts/ArtifactsResolver.kt b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/artifacts/ArtifactsResolver.kt index 2b9b5dcb..b0f92de5 100644 --- a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/artifacts/ArtifactsResolver.kt +++ b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/artifacts/ArtifactsResolver.kt @@ -20,7 +20,6 @@ import com.callstack.react.brownfield.processors.VariantTaskProvider import com.callstack.react.brownfield.shared.BaseProject import com.callstack.react.brownfield.shared.GradleProps import com.callstack.react.brownfield.utils.Extension -import com.callstack.react.brownfield.utils.Utils import org.gradle.api.ProjectConfigurationException import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ResolvedArtifact @@ -53,14 +52,6 @@ class ArtifactsResolver( } private fun embedExpoDependencies() { - /** - * expo project does not exist in example-android-library so doing an - * early exit. - */ - if (Utils.isExampleLibrary(baseProject.project.name)) { - return - } - /** * The expo third party dependencies are linked to `expo` project. * They are linked via `api` configuration and in two ways. In the diff --git a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/plugin/RNSourceSets.kt b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/plugin/RNSourceSets.kt index fe10bce4..bd5b2a7f 100644 --- a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/plugin/RNSourceSets.kt +++ b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/plugin/RNSourceSets.kt @@ -23,15 +23,6 @@ object RNSourceSets { project: Project, extension: Extension, ) { - /** - * Do not configure sourceSets for our example library. - * The reason is that we expect some RN specific tasks to - * be present on the consuming library, which is not the case - * with our example library. - */ - if (Utils.isExampleLibrary(project.name)) { - return - } this.project = project this.extension = extension diff --git a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/utils/Utils.kt b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/utils/Utils.kt index c3c8d2da..6964d3d3 100644 --- a/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/utils/Utils.kt +++ b/gradle-plugins/react/brownfield/src/main/kotlin/com/callstack/react/brownfield/utils/Utils.kt @@ -39,10 +39,6 @@ object Utils { } } - fun isExampleLibrary(projectName: String): Boolean { - return projectName == "example-android-library" - } - fun isExpoProject(project: Project): Boolean { return project.findProject(EXPO_PROJECT_LOCATOR) != null } diff --git a/gradle-plugins/react/example-android-library/build.gradle.kts b/gradle-plugins/react/example-android-library/build.gradle.kts deleted file mode 100644 index 1b0390d2..00000000 --- a/gradle-plugins/react/example-android-library/build.gradle.kts +++ /dev/null @@ -1,46 +0,0 @@ -plugins { - id("com.android.library") - id("org.jetbrains.kotlin.android") - id("com.callstack.react.brownfield") -} - -reactBrownfield {} - -repositories { - google() - mavenCentral() -} - -android { - namespace = "com.callstack.example" - compileSdk = 34 - - defaultConfig { - minSdk = 24 - } - - flavorDimensions += "env" - - productFlavors { - create("free") { - dimension = "env" - } - create("paid") { - dimension = "env" - } - } - - buildTypes { - release {} - debug {} - } - - compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 - } - - kotlinOptions { - jvmTarget = "17" - } -} \ No newline at end of file diff --git a/gradle-plugins/react/example-android-library/src/main/kotlin/com/callstack/example/Library.kt b/gradle-plugins/react/example-android-library/src/main/kotlin/com/callstack/example/Library.kt deleted file mode 100644 index 6eacbb2e..00000000 --- a/gradle-plugins/react/example-android-library/src/main/kotlin/com/callstack/example/Library.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.callstack.example - -class Library { - fun someLibraryMethod() { - println("=== Example Android Library ===") - } -} diff --git a/gradle-plugins/react/package.json b/gradle-plugins/react/package.json index 70e4b82e..a27d9ea8 100644 --- a/gradle-plugins/react/package.json +++ b/gradle-plugins/react/package.json @@ -3,6 +3,6 @@ "version": "0.0.1", "private": true, "scripts": { - "gradle-plugin:lint": "./gradlew :brownfield:detekt :brownfield:ktlintFormat" + "gradle-plugin:lint": "./brownfield/gradlew -p brownfield detekt ktlintFormat" } } diff --git a/gradle-plugins/react/settings.gradle.kts b/gradle-plugins/react/settings.gradle.kts deleted file mode 100644 index 40b8fe9c..00000000 --- a/gradle-plugins/react/settings.gradle.kts +++ /dev/null @@ -1,15 +0,0 @@ -pluginManagement { - repositories { - google() - mavenCentral() - } - plugins { - id("com.android.library") version "8.5.2" - id("org.jetbrains.kotlin.android") version "1.9.24" - } -} - -rootProject.name = "react-brownfield-plugin" - -include(":example-android-library") -includeBuild("brownfield")