Add signing configurations.

This commit is contained in:
Moxie Marlinspike 2015-02-28 16:38:22 -08:00
parent 2a4165941a
commit 4ffa75fc1c
3 changed files with 138 additions and 27 deletions

View File

@ -10,6 +10,11 @@ buildscript {
apply plugin: 'com.android.library'
apply plugin: 'maven'
apply plugin: 'signing'
archivesBaseName = "textsecure-android"
version = version_number
group = group_info
repositories {
mavenCentral()
@ -17,7 +22,7 @@ repositories {
}
dependencies {
compile 'org.whispersystems:axolotl-android:1.1.1'
compile "org.whispersystems:axolotl-android:${axolotl_version}"
compile (project(':java')) {
exclude group: 'org.whispersystems', module: 'axolotl-java'
exclude group: 'org.apache.httpcomponents', module: 'httpclient'
@ -32,6 +37,17 @@ android {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
libraryVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.aar')) {
def fileName = "${archivesBaseName}-${version}.aar"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
}
tasks.whenTaskAdded { task ->
@ -40,15 +56,55 @@ tasks.whenTaskAdded { task ->
}
}
version '0.1'
group 'org.whispersystems.textsecure'
archivesBaseName = 'libtextsecure'
signing {
required { has("release") && gradle.taskGraph.hasTask("uploadArchives") }
sign configurations.archives
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: mavenLocal().getUrl())
configuration = configurations.archives
repositories.mavenDeployer {
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
repository(url: sonatypeRepo) {
authentication(userName: whisperSonatypeUsername, password: whisperSonatypePassword)
}
pom.project {
name 'textsecure-android'
packaging 'aar'
description 'TextSecure library for Android'
url 'https://github.com/WhisperSystems/libtextsecure-java'
scm {
url 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
connection 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
developerConnection 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
}
licenses {
license {
name 'GPLv3'
url 'https://www.gnu.org/licenses/gpl-3.0.txt'
distribution 'repo'
}
}
developers {
developer {
name 'Moxie Marlinspike'
}
}
}
}
}
task installArchives(type: Upload) {
description "Installs the artifacts to the local Maven repository."
configuration = configurations['archives']
repositories {
mavenDeployer {
repository url: "file://${System.properties['user.home']}/.m2/repository"
}
}
}

View File

@ -1,7 +1,7 @@
subprojects {
ext.version_number = "1.0.0"
ext.version_number = "1.0.0-RC1"
ext.group_info = "org.whispersystems"
ext.axolotl_version = "1.1.1"
ext.axolotl_version = "1.2.1"
if (JavaVersion.current().isJava8Compatible()) {
allprojects {

View File

@ -1,18 +1,15 @@
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0'
}
}
apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'signing'
sourceCompatibility = 1.7
archivesBaseName = "textsecure-java"
version = version_number
group = group_info
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
@ -20,28 +17,86 @@ dependencies {
compile 'com.googlecode.libphonenumber:libphonenumber:6.1'
compile 'com.fasterxml.jackson.core:jackson-databind:2.5.0'
compile 'org.whispersystems:axolotl-java:1.1.1'
compile "org.whispersystems:axolotl-java:${axolotl_version}"
compile 'com.squareup.okhttp:okhttp:2.2.0'
compile 'org.apache.httpcomponents:httpclient:4.4'
testCompile 'junit:junit:3.8.2'
}
tasks.whenTaskAdded { task ->
if (task.name.equals("lint")) {
task.enabled = false
}
}
version '0.1'
group 'org.whispersystems.textsecure'
archivesBaseName = 'libtextsecure'
signing {
required { has("release") && gradle.taskGraph.hasTask("uploadArchives") }
sign configurations.archives
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: mavenLocal().getUrl())
configuration = configurations.archives
repositories.mavenDeployer {
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
repository(url: sonatypeRepo) {
authentication(userName: whisperSonatypeUsername, password: whisperSonatypePassword)
}
pom.project {
name 'textscure-java'
packaging 'jar'
description 'TetSecure library for Java'
url 'https://github.com/WhisperSystems/libtextsecure-java'
scm {
url 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
connection 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
developerConnection 'scm:git@github.com:WhisperSystems/libtextsecure-java.git'
}
licenses {
license {
name 'GPLv3'
url 'https://www.gnu.org/licenses/gpl-3.0.txt'
distribution 'repo'
}
}
developers {
developer {
name 'Moxie Marlinspike'
}
}
}
}
}
task installArchives(type: Upload) {
description "Installs the artifacts to the local Maven repository."
configuration = configurations['archives']
repositories {
mavenDeployer {
repository url: "file://${System.properties['user.home']}/.m2/repository"
}
}
}
task packageJavadoc(type: Jar, dependsOn: 'javadoc') {
from javadoc.destinationDir
classifier = 'javadoc'
}
task packageSources(type: Jar) {
from sourceSets.main.allSource
classifier = 'sources'
}
artifacts {
archives(packageJavadoc) {
type = 'javadoc'
}
archives packageSources
}