You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2014/01/21 11:50:31 UTC
svn commit: r1559970 - in
/httpcomponents/httpclient-android/branches/test-branch: build.gradle
gradle.properties
Author: olegk
Date: Tue Jan 21 10:50:31 2014
New Revision: 1559970
URL: http://svn.apache.org/r1559970
Log:
Support for snapshot publishing
Modified:
httpcomponents/httpclient-android/branches/test-branch/build.gradle
httpcomponents/httpclient-android/branches/test-branch/gradle.properties
Modified: httpcomponents/httpclient-android/branches/test-branch/build.gradle
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient-android/branches/test-branch/build.gradle?rev=1559970&r1=1559969&r2=1559970&view=diff
==============================================================================
--- httpcomponents/httpclient-android/branches/test-branch/build.gradle (original)
+++ httpcomponents/httpclient-android/branches/test-branch/build.gradle Tue Jan 21 10:50:31 2014
@@ -8,6 +8,8 @@ buildscript {
}
apply plugin: 'android-library'
+apply plugin: 'maven-publish'
+apply plugin: 'signing'
repositories {
mavenCentral()
@@ -32,6 +34,58 @@ android {
}
}
+ext.sharedManifest = manifest {
+ attributes (
+ 'Specification-Title': "HttpComponents HttpClient for Android",
+ 'Specification-Version': "$version",
+ 'Specification-Vendor': "The Apache Software Foundation",
+ 'Implementation-Title': "HttpComponents HttpClient for Android",
+ 'Implementation-Version': "$version",
+ 'Implementation-Vendor': "The Apache Software Foundation",
+ 'Implementation-Vendor-Id': "org.apache",
+ 'url': 'http://hc.apache.org/httpcomponents-client'
+ )
+}
+
+def pomDetails = {
+
+ name 'HttpComponents Client for Android'
+ url 'http://hc.apache.org/httpcomponents-client/'
+ organization {
+ name 'The Apache Software Foundation'
+ url 'http://www.apache.org/'
+ }
+ licenses {
+ license {
+ name 'Apache License, Version 2.0'
+ url 'LICENSE.txt'
+ distribution 'repo'
+ }
+ }
+ issueManagement {
+ system 'Jira'
+ url 'http://issues.apache.org/jira/browse/HTTPCLIENT'
+ }
+
+}
+
+publishing {
+ publications {
+ asf (MavenPublication) {
+ pom.withXml {
+ asNode().children().last() + pomDetails
+ }
+ }
+ repositories {
+ maven {
+ name 'ASF snapshots'
+ url ASF_SNAPSHOT_REPO
+ }
+ }
+ }
+}
+
+
android.libraryVariants.all { variant ->
def name = variant.buildType.name
if (name == 'release') {
@@ -44,20 +98,73 @@ android.libraryVariants.all { variant ->
rename '(NOTICE|LICENSE).txt', '$1'
manifest {
- attributes (
- 'Specification-Title': "HttpComponents HttpClient for Android",
- 'Specification-Version': "$version",
- 'Specification-Vendor': "The Apache Software Foundation",
- 'Implementation-Title': "HttpComponents HttpClient for Android",
- 'Implementation-Version': "$version",
- 'Implementation-Vendor': "The Apache Software Foundation",
- 'Implementation-Vendor-Id': "org.apache",
- 'url': 'http://hc.apache.org/httpcomponents-client'
- )
+ from sharedManifest
+ }
+ }
+
+ task createAndroidSrcJar(type: Jar) {
+ dependsOn variant.javaCompile
+ from android.sourceSets.main.allSource // need this to include resources
+ from 'NOTICE.txt'
+ from 'LICENSE.txt'
+ rename '(NOTICE|LICENSE).txt', '$1'
+ classifier = 'source'
+
+ manifest {
+ from sharedManifest
+ }
+ }
+
+ task createAndroidJavadoc(type: Javadoc) {
+ dependsOn variant.javaCompile
+ source = variant.javaCompile.source
+ classpath = files(android.plugin.runtimeJarList, variant.javaCompile.classpath.files)
+ }
+
+ task createAndroidJavadocJar(type: Jar) {
+ dependsOn createAndroidJavadoc
+ from createAndroidJavadoc.destinationDir
+ from 'NOTICE.txt'
+ from 'LICENSE.txt'
+ rename '(NOTICE|LICENSE).txt', '$1'
+ classifier = 'javadoc'
+
+ manifest {
+ from sharedManifest
}
+ }
+ artifacts {
+ archives createAndroidJar
+ archives createAndroidSrcJar
+ archives createAndroidJavadocJar
}
- artifacts.add('archives', createAndroidJar)
+ publishing.publications.asf.artifacts = [createAndroidJar, createAndroidSrcJar, createAndroidJavadocJar]
}
}
+
+gradle.taskGraph.whenReady { TaskExecutionGraph taskGraph ->
+ taskGraph.allTasks.findAll { Task task ->
+ task instanceof PublishToMavenRepository }.each { Task task ->
+ task.doFirst {
+ MavenArtifactRepository repo = task.repository
+ if (repo.url.scheme && repo.url.scheme != 'file') {
+ Console console = System.console()
+ if (console) {
+ console.println("Publishing to repository \'${repo.name}\': ${repo.url}")
+ PasswordCredentials creds = repo.credentials
+ if (!creds.username) {
+ console.println("> Please enter user name:")
+ creds.username = console.readLine()
+ }
+ if (!creds.password) {
+ console.println("> Please enter password:")
+ creds.password = console.readPassword()
+ }
+ }
+ }
+ }
+ }
+}
+
Modified: httpcomponents/httpclient-android/branches/test-branch/gradle.properties
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient-android/branches/test-branch/gradle.properties?rev=1559970&r1=1559969&r2=1559970&view=diff
==============================================================================
--- httpcomponents/httpclient-android/branches/test-branch/gradle.properties (original)
+++ httpcomponents/httpclient-android/branches/test-branch/gradle.properties Tue Jan 21 10:50:31 2014
@@ -1 +1,2 @@
-HC_VER=4.3.1-SNAPSHOT
\ No newline at end of file
+HC_VER=4.3.1-SNAPSHOT
+ASF_SNAPSHOT_REPO=https://repository.apache.org/content/repositories/snapshots
\ No newline at end of file