From faf42cdd2ee09622796428cbcff36c98a612280e Mon Sep 17 00:00:00 2001 From: JiangSong Date: Thu, 27 Sep 2018 16:08:01 +0800 Subject: [PATCH] Config for JitPack.io --- gradle-mvn-push.gradle | 103 +++++++++++++++++++++++++++++++++++++++ library/build.gradle | 106 ++--------------------------------------- 2 files changed, 108 insertions(+), 101 deletions(-) create mode 100644 gradle-mvn-push.gradle diff --git a/gradle-mvn-push.gradle b/gradle-mvn-push.gradle new file mode 100644 index 000000000..82634654c --- /dev/null +++ b/gradle-mvn-push.gradle @@ -0,0 +1,103 @@ +apply plugin: 'maven' +apply plugin: 'signing' + +archivesBaseName = 'android-maps-utils' +group = 'com.google.maps.android' + + +task apklib(type: Zip) { + dependsOn 'check' + appendix = extension = 'apklib' + + from 'AndroidManifest.xml' + into('res') { + from 'res' + } + into('src') { + from 'src' + } +} + +artifacts { + archives apklib +} + +task sourcesJar(type: Jar) { + from android.sourceSets.main.java.srcDirs + classifier = 'sources' +} + +signing { + sign configurations.archives +} + +if (!hasProperty("sonatypeUsername")) { + sonatypeUsername = "" +} +if (!hasProperty("sonatypePassword")) { + sonatypePassword = "" +} + +uploadArchives { + repositories { + mavenDeployer { + beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } + + repository(url: 'https://oss.sonatype.org/service/local/staging/deploy/maven2') { + authentication(userName: sonatypeUsername, password: sonatypePassword) + } + snapshotRepository(url: 'https://oss.sonatype.org/content/repositories/snapshots/') { + authentication(userName: sonatypeUsername, password: sonatypePassword) + } + + modifyPom(addFilter('aar') { artifact, file -> + artifact.name == 'android-maps-utils' + }) + + modifyPom(addFilter('apklib') { artifact, file -> + artifact.name == 'android-maps-utils-apklib' + }) + + // There's no official apklib for Google Play services, so we + // can't really maintain that dependency for the apklib packaging. + pom('apklib').whenConfigured { pom -> + pom.dependencies = [] + } + } + } +} + +def modifyPom(pom) { + pom.project { + name 'Google Maps Android API utility library' + description 'Handy extensions to the Google Maps Android API.' + url 'https://github.com/googlemaps/android-maps-utils' + + scm { + url 'scm:git@github.com:googlemaps/android-maps-utils.git' + connection 'scm:git@github.com:googlemaps/android-maps-utils.git' + developerConnection 'scm:git@github.com:googlemaps/android-maps-utils.git' + } + + licenses { + license { + name 'The Apache Software License, Version 2.0' + url 'http://www.apache.org/licenses/LICENSE-2.0.txt' + distribution 'repo' + } + } + + organization { + name 'Google Inc' + url 'http://developers.google.com/maps' + } + + developers { + developer { + id 'broady' + name 'Chris Broadfoot' + url 'http://google.com/+ChristopherBroadfoot' + } + } + } +} diff --git a/library/build.gradle b/library/build.gradle index e7eeeeb1e..b3f25eea8 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -1,9 +1,4 @@ apply plugin: 'com.android.library' -apply plugin: 'maven' -apply plugin: 'signing' - -archivesBaseName = 'android-maps-utils' -group = 'com.google.maps.android' dependencies { compile 'com.google.android.gms:play-services-maps:11.0.4' @@ -35,106 +30,15 @@ android { // This enables long timeouts required on slow environments, e.g. Travis adbOptions { timeOutInMs 10 * 60 * 1000 // 10 minutes - installOptions "-d","-t" + installOptions "-d", "-t" } } task instrumentTest(dependsOn: connectedCheck) -task apklib(type: Zip) { - dependsOn 'check' - appendix = extension = 'apklib' - - from 'AndroidManifest.xml' - into('res') { - from 'res' - } - into('src') { - from 'src' - } -} - -artifacts { - archives apklib -} - -task sourcesJar(type: Jar) { - from android.sourceSets.main.java.srcDirs - classifier = 'sources' -} - -signing { - sign configurations.archives -} - -if (!hasProperty("sonatypeUsername")) { - sonatypeUsername = "" -} -if (!hasProperty("sonatypePassword")) { - sonatypePassword = "" -} - -uploadArchives { - repositories { - mavenDeployer { - beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } - - repository(url: 'https://oss.sonatype.org/service/local/staging/deploy/maven2') { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - snapshotRepository(url: 'https://oss.sonatype.org/content/repositories/snapshots/') { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - - modifyPom(addFilter('aar') { artifact, file -> - artifact.name == 'android-maps-utils' - }) - - modifyPom(addFilter('apklib') { artifact, file -> - artifact.name == 'android-maps-utils-apklib' - }) - - // There's no official apklib for Google Play services, so we - // can't really maintain that dependency for the apklib packaging. - pom('apklib').whenConfigured { pom -> - pom.dependencies = [] - } - } - } -} - -def modifyPom(pom) { - pom.project { - name 'Google Maps Android API utility library' - description 'Handy extensions to the Google Maps Android API.' - url 'https://github.com/googlemaps/android-maps-utils' - - scm { - url 'scm:git@github.com:googlemaps/android-maps-utils.git' - connection 'scm:git@github.com:googlemaps/android-maps-utils.git' - developerConnection 'scm:git@github.com:googlemaps/android-maps-utils.git' - } - - licenses { - license { - name 'The Apache Software License, Version 2.0' - url 'http://www.apache.org/licenses/LICENSE-2.0.txt' - distribution 'repo' - } - } - - organization { - name 'Google Inc' - url 'http://developers.google.com/maps' - } - - developers { - developer { - id 'broady' - name 'Chris Broadfoot' - url 'http://google.com/+ChristopherBroadfoot' - } - } - } +if (System.getenv("JITPACK")) { + apply plugin: 'maven' +} else { + apply from: '../gradle-mvn-push.gradle' }