Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,4 @@
/scripts/publish/_newCreds.properties
*.gpg
/buildSrc/build
mavenCredentials.properties
3 changes: 2 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -52,4 +52,5 @@ val prCheck by tasks.registering {
}

apply (from = "$rootDir/scripts/project-dependancy-graph.gradle")
apply (from = "$rootDir/maven-versions.gradle.kts")
apply (from = "$rootDir/maven-versions.gradle.kts")
apply(from = "$rootDir/publishTasks.gradle.kts")
20 changes: 20 additions & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,23 @@
android.useAndroidX=true
kotlin.code.style=official
org.gradle.jvmargs=-Xmx2048M -Dkotlin.daemon.jvm.options\="-Xmx2048M"

# Maven Central publish credentials
mavenCentralUsername=XXXX
mavenCentralPassword=XXXX
signing.keyId=XXXX
signing.password=XXXX
signing.secretKeyRingFile=XXXX

# Maven Central publish pom details
pom.inceptionYear=2024
pom.url=https://androidpluto.com
pom.license.name=The Apache Software License, Version 2.0
pom.license.url=http://www.apache.org/licenses/LICENSE-2.0.txt
pom.developer.id=srtvprateek
pom.developer.name=Prateek Srivastava
[email protected]
pom.scm.connection=https://github.com/androidPluto/pluto
pom.scm.developerConnection=https://github.com/srtvprateek
pom.scm.url=https://github.com/androidPluto/pluto

4 changes: 3 additions & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ targetSdk = "32"
compileSdk = "34"
buildTools = "34.0.0"

agp = "8.2.2"
agp = "8.6.0"
androidXCore = "1.6.0"
androidXLifecycle = "2.8.7"
compose = "1.7.7"
Expand All @@ -23,6 +23,7 @@ navigation = "2.8.6"
okhttp = "4.12.0"
retrofit = "2.9.0"
room = "2.5.1"
mavenPublish = "0.28.0"

[plugins]

Expand All @@ -35,6 +36,7 @@ kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref =
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint-plugin" }
maven-publish = { id = "com.vanniktech.maven.publish", version.ref = "mavenPublish"}

[libraries]

Expand Down
46 changes: 42 additions & 4 deletions pluto-plugins/base/lib/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import com.vanniktech.maven.publish.SonatypeHost

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}

val version = Versioning.loadVersioningData()
val verCode = version["code"] as Int
val verPublish = version["publish"] as String
val verGitSHA = version["gitSha"] as String

extra["PUBLISH_GROUP_ID"] = "com.plutolib"
extra["PUBLISH_ARTIFACT_ID"] = "plugin"
extra["PUBLISH_VERSION"] = verPublish

android {
namespace = "com.pluto.plugin"
resourcePrefix = "pluto___"
Expand Down Expand Up @@ -54,6 +53,45 @@ android {
}
}

extra["PUBLISH_GROUP_ID"] = "com.androidpluto"
extra["PUBLISH_ARTIFACT_ID"] = "plugin"
extra["PUBLISH_ARTIFACT_NAME"] = "Android Pluto Base Plugin Module"
extra["PUBLISH_ARTIFACT_DESCRIPTION"] = "Open Sourced, on-device debugger for Android apps"

mavenPublishing {
coordinates(
groupId = extra["PUBLISH_GROUP_ID"] as String,
artifactId = extra["PUBLISH_ARTIFACT_ID"] as String,
version = verPublish
)
pom {
name.set(extra["PUBLISH_ARTIFACT_NAME"] as String)
description.set(extra["PUBLISH_ARTIFACT_DESCRIPTION"] as String)
inceptionYear.set(project.findProperty("pom.inceptionYear") as? String)
url.set(project.findProperty("pom.url") as? String)
licenses {
license {
name.set(project.findProperty("pom.license.name") as? String)
url.set(project.findProperty("pom.license.url") as? String)
}
}
developers {
developer {
id.set(project.findProperty("pom.developer.id") as? String)
name.set(project.findProperty("pom.developer.name") as? String)
email.set(project.findProperty("pom.developer.email") as? String)
}
}
scm {
connection.set(project.findProperty("pom.scm.connection") as? String)
developerConnection.set(project.findProperty("pom.scm.developerConnection") as? String)
url.set(project.findProperty("pom.scm.url") as? String)
}
}
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
signAllPublications()
}

dependencies {
implementation(libs.androidx.core)
implementation(libs.androidx.appcompat)
Expand Down
46 changes: 42 additions & 4 deletions pluto-plugins/bundle/lib-no-op/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import com.vanniktech.maven.publish.SonatypeHost

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}

val version = Versioning.loadVersioningData()
val verCode = version["code"] as Int
val verPublish = version["publish"] as String
val verGitSHA = version["gitSha"] as String

extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "bundle-core-no-op"
extra["PUBLISH_VERSION"] = verPublish

android {
namespace = "com.pluto.plugins.bundle.core"
compileSdk = libs.versions.compileSdk.get().toInt()
Expand Down Expand Up @@ -49,6 +48,45 @@ android {
}
}

extra["PUBLISH_GROUP_ID"] = "com.androidpluto.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "bundle-core-no-op"
extra["PUBLISH_ARTIFACT_NAME"] = "Android Pluto Plugin Bundle"
extra["PUBLISH_ARTIFACT_DESCRIPTION"] = "Bundle module for Android Pluto plugins"

mavenPublishing {
coordinates(
groupId = extra["PUBLISH_GROUP_ID"] as String,
artifactId = extra["PUBLISH_ARTIFACT_ID"] as String,
version = verPublish
)
pom {
name.set(extra["PUBLISH_ARTIFACT_NAME"] as String)
description.set(extra["PUBLISH_ARTIFACT_DESCRIPTION"] as String)
inceptionYear.set(project.findProperty("pom.inceptionYear") as? String)
url.set(project.findProperty("pom.url") as? String)
licenses {
license {
name.set(project.findProperty("pom.license.name") as? String)
url.set(project.findProperty("pom.license.url") as? String)
}
}
developers {
developer {
id.set(project.findProperty("pom.developer.id") as? String)
name.set(project.findProperty("pom.developer.name") as? String)
email.set(project.findProperty("pom.developer.email") as? String)
}
}
scm {
connection.set(project.findProperty("pom.scm.connection") as? String)
developerConnection.set(project.findProperty("pom.scm.developerConnection") as? String)
url.set(project.findProperty("pom.scm.url") as? String)
}
}
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
signAllPublications()
}

dependencies {
api(project(":pluto-plugins:plugins:exceptions:lib-no-op"))
api(project(":pluto-plugins:plugins:network:core:lib-no-op"))
Expand Down
46 changes: 42 additions & 4 deletions pluto-plugins/bundle/lib/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import com.vanniktech.maven.publish.SonatypeHost

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}

val version = Versioning.loadVersioningData()
val verCode = version["code"] as Int
val verPublish = version["publish"] as String
val verGitSHA = version["gitSha"] as String

extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "bundle-core"
extra["PUBLISH_VERSION"] = verPublish

android {
namespace = "com.pluto.plugins.bundle.core"
compileSdk = libs.versions.compileSdk.get().toInt()
Expand Down Expand Up @@ -49,6 +48,45 @@ android {
}
}

extra["PUBLISH_GROUP_ID"] = "com.androidpluto.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "bundle-core"
extra["PUBLISH_ARTIFACT_NAME"] = "Android Pluto Plugin Bundle"
extra["PUBLISH_ARTIFACT_DESCRIPTION"] = "Bundle module for Android Pluto plugins"

mavenPublishing {
coordinates(
groupId = extra["PUBLISH_GROUP_ID"] as String,
artifactId = extra["PUBLISH_ARTIFACT_ID"] as String,
version = verPublish
)
pom {
name.set(extra["PUBLISH_ARTIFACT_NAME"] as String)
description.set(extra["PUBLISH_ARTIFACT_DESCRIPTION"] as String)
inceptionYear.set(project.findProperty("pom.inceptionYear") as? String)
url.set(project.findProperty("pom.url") as? String)
licenses {
license {
name.set(project.findProperty("pom.license.name") as? String)
url.set(project.findProperty("pom.license.url") as? String)
}
}
developers {
developer {
id.set(project.findProperty("pom.developer.id") as? String)
name.set(project.findProperty("pom.developer.name") as? String)
email.set(project.findProperty("pom.developer.email") as? String)
}
}
scm {
connection.set(project.findProperty("pom.scm.connection") as? String)
developerConnection.set(project.findProperty("pom.scm.developerConnection") as? String)
url.set(project.findProperty("pom.scm.url") as? String)
}
}
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
signAllPublications()
}

dependencies {
api(project(":pluto-plugins:plugins:exceptions:lib"))
api(project(":pluto-plugins:plugins:network:core:lib"))
Expand Down
47 changes: 42 additions & 5 deletions pluto-plugins/plugins/datastore/lib-no-op/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import com.vanniktech.maven.publish.SonatypeHost

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}

val version = Versioning.loadVersioningData()
val verCode = version["code"] as Int
val verPublish = version["publish"] as String
val verGitSHA = version["gitSha"] as String

extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref-no-op"
extra["PUBLISH_VERSION"] = verPublish

android {
namespace = "com.pluto.plugins.datastore.pref"

Expand Down Expand Up @@ -49,7 +48,45 @@ android {
}
}

extra["PUBLISH_GROUP_ID"] = "com.androidpluto.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref-no-op"
extra["PUBLISH_ARTIFACT_NAME"] = "Android Pluto Datastore Preferences Plugin"
extra["PUBLISH_ARTIFACT_DESCRIPTION"] = "Plugin to manage Datastore preferences in Android Pluto"

mavenPublishing {
coordinates(
groupId = extra["PUBLISH_GROUP_ID"] as String,
artifactId = extra["PUBLISH_ARTIFACT_ID"] as String,
version = verPublish
)
pom {
name.set(extra["PUBLISH_ARTIFACT_NAME"] as String)
description.set(extra["PUBLISH_ARTIFACT_DESCRIPTION"] as String)
inceptionYear.set(project.findProperty("pom.inceptionYear") as? String)
url.set(project.findProperty("pom.url") as? String)
licenses {
license {
name.set(project.findProperty("pom.license.name") as? String)
url.set(project.findProperty("pom.license.url") as? String)
}
}
developers {
developer {
id.set(project.findProperty("pom.developer.id") as? String)
name.set(project.findProperty("pom.developer.name") as? String)
email.set(project.findProperty("pom.developer.email") as? String)
}
}
scm {
connection.set(project.findProperty("pom.scm.connection") as? String)
developerConnection.set(project.findProperty("pom.scm.developerConnection") as? String)
url.set(project.findProperty("pom.scm.url") as? String)
}
}
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
signAllPublications()
}

dependencies {
implementation(libs.androidx.core)
implementation(libs.datastore.preferences)
}
46 changes: 42 additions & 4 deletions pluto-plugins/plugins/datastore/lib/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import com.vanniktech.maven.publish.SonatypeHost

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}

val version = Versioning.loadVersioningData()
val verCode = version["code"] as Int
val verPublish = version["publish"] as String
val verGitSHA = version["gitSha"] as String

extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref"
extra["PUBLISH_VERSION"] = verPublish

android {
namespace = "com.pluto.plugins.datastore.pref"
resourcePrefix = "pluto_dts___"
Expand Down Expand Up @@ -60,6 +59,45 @@ android {
}
}

extra["PUBLISH_GROUP_ID"] = "com.androidpluto.plugins"
extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref"
extra["PUBLISH_ARTIFACT_NAME"] = "Android Pluto Datastore Preferences Plugin"
extra["PUBLISH_ARTIFACT_DESCRIPTION"] = "Plugin to manage Datastore preferences in Android Pluto"

mavenPublishing {
coordinates(
groupId = extra["PUBLISH_GROUP_ID"] as String,
artifactId = extra["PUBLISH_ARTIFACT_ID"] as String,
version = verPublish
)
pom {
name.set(extra["PUBLISH_ARTIFACT_NAME"] as String)
description.set(extra["PUBLISH_ARTIFACT_DESCRIPTION"] as String)
inceptionYear.set(project.findProperty("pom.inceptionYear") as? String)
url.set(project.findProperty("pom.url") as? String)
licenses {
license {
name.set(project.findProperty("pom.license.name") as? String)
url.set(project.findProperty("pom.license.url") as? String)
}
}
developers {
developer {
id.set(project.findProperty("pom.developer.id") as? String)
name.set(project.findProperty("pom.developer.name") as? String)
email.set(project.findProperty("pom.developer.email") as? String)
}
}
scm {
connection.set(project.findProperty("pom.scm.connection") as? String)
developerConnection.set(project.findProperty("pom.scm.developerConnection") as? String)
url.set(project.findProperty("pom.scm.url") as? String)
}
}
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
signAllPublications()
}

dependencies {
implementation(project(":pluto-plugins:base:lib"))

Expand Down
Loading