dd6a2b5813
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
57 lines
1.8 KiB
Text
57 lines
1.8 KiB
Text
plugins {
|
|
kotlin("android")
|
|
id("maven-publish")
|
|
}
|
|
|
|
// Type safety can sometimes suck
|
|
fun getCredential(type: String): String {
|
|
return when (type) {
|
|
// Attempt to find credentials passed by -Pmaven.$type=
|
|
"user", "password" -> (findProperty("maven.$type")
|
|
// Fall back to MAVEN_$type from env
|
|
?: System.getenv("MAVEN_${type.toUpperCase()}"))?.toString()
|
|
// Finally fallthrough to an empty string to let task configuration complete
|
|
// even if actual publishing is going to fail
|
|
?: ""
|
|
else -> throw IllegalArgumentException("Invalid credential type: $type")
|
|
}
|
|
}
|
|
|
|
android {
|
|
defaultConfig {
|
|
versionCode = 1
|
|
versionName = "1.0"
|
|
consumerProguardFiles("consumer-rules.pro")
|
|
}
|
|
}
|
|
|
|
afterEvaluate {
|
|
publishing {
|
|
repositories {
|
|
maven {
|
|
name = "aps"
|
|
url = uri("https://maven.msfjarvis.dev/android-password-store/${findProperty("POM_ARTIFACT_ID")}")
|
|
credentials {
|
|
username = getCredential("user")
|
|
password = getCredential("password")
|
|
}
|
|
}
|
|
}
|
|
publications {
|
|
create<MavenPublication>("apsMaven") {
|
|
from(components.getByName("release"))
|
|
groupId = findProperty("GROUP").toString()
|
|
artifactId = findProperty("POM_ARTIFACT_ID").toString()
|
|
version = findProperty("VERSION_NAME").toString()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
compileOnly(Dependencies.AndroidX.annotation)
|
|
implementation(Dependencies.AndroidX.autofill)
|
|
implementation(Dependencies.Kotlin.Coroutines.android)
|
|
implementation(Dependencies.Kotlin.Coroutines.core)
|
|
implementation(Dependencies.ThirdParty.timberkt)
|
|
}
|