的
This commit is contained in:
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* Copyright 2024 by Patryk Goworowski and Patrick Michalik.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
android {
|
||||
|
||||
compileSdk library.target_sdk
|
||||
|
||||
defaultConfig {
|
||||
minSdk library.min_sdk
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
freeCompilerArgs = [
|
||||
"-Xexplicit-api=strict",
|
||||
"-opt-in=kotlin.RequiresOptIn",
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
ext {
|
||||
getNamespace = this.&getNamespace
|
||||
getArtifactId = this.&getArtifactId
|
||||
customizePom = this.&customizePom
|
||||
setUpRepositories = this.&setUpRepositories
|
||||
setUpSigning = this.&setUpSigning
|
||||
}
|
||||
|
||||
String getNamespace(Project project) {
|
||||
return "${library.groupId}.${project.name.replace("-", ".")}"
|
||||
}
|
||||
|
||||
String getArtifactId(Project project) {
|
||||
return project.name
|
||||
}
|
||||
|
||||
void customizePom(MavenPom pom) {
|
||||
|
||||
pom.name = "Vico"
|
||||
pom.description = "A light and extensible chart library for Android."
|
||||
pom.url = "https://github.com/patrykandpatrick/vico"
|
||||
|
||||
pom.licenses {
|
||||
|
||||
license {
|
||||
name = "The Apache License, Version 2.0"
|
||||
url = "http://www.apache.org/licenses/LICENSE-2.0.txt"
|
||||
}
|
||||
}
|
||||
|
||||
pom.scm {
|
||||
connection = "scm:git:git://github.com/patrykandpatrick/vico.git"
|
||||
developerConnection = "scm:git:ssh://github.com/patrykandpatrick/vico.git"
|
||||
url = "https://github.com/patrykandpatrick/vico"
|
||||
}
|
||||
|
||||
pom.developers {
|
||||
|
||||
developer {
|
||||
id = "patrykgoworowski"
|
||||
name = "Patryk Goworowski"
|
||||
email = "contact@patrykgoworowski.pl"
|
||||
}
|
||||
|
||||
developer {
|
||||
id = "patrickmichalik"
|
||||
name = "Patrick Michalik"
|
||||
email = "contact@patrickmichalik.com"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
boolean isReleaseVersion() {
|
||||
return !project.version.endsWith("SNAPSHOT")
|
||||
}
|
||||
|
||||
void setUpRepositories(RepositoryHandler handler) {
|
||||
handler.maven {
|
||||
def releaseUrl = "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/"
|
||||
def snapshotUrl = "https://s01.oss.sonatype.org/content/repositories/snapshots/"
|
||||
url = isReleaseVersion() ? releaseUrl : snapshotUrl
|
||||
|
||||
credentials {
|
||||
username = findProperty("OSSRH_TOKEN")
|
||||
password = findProperty("OSSRH_TOKEN_PASSWORD")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void setUpSigning(SigningExtension signing, MavenPublication publication) {
|
||||
signing.setRequired {
|
||||
isReleaseVersion() && gradle.taskGraph.allTasks.any { it.is(PublishToMavenRepository) }
|
||||
}
|
||||
|
||||
def gpgKey = findProperty("GPG_KEY")
|
||||
def gpgKeyPassword = findProperty("GPG_KEY_PASSWORD")
|
||||
|
||||
signing.useInMemoryPgpKeys(gpgKey, gpgKeyPassword)
|
||||
signing.sign publication
|
||||
}
|
||||
Reference in New Issue
Block a user