Skip to content
Snippets Groups Projects
Commit 3ed692bb authored by dgelessus's avatar dgelessus
Browse files

Migrate to Gradle maven-publish plugin from deprecated maven plugin

parent e74d8836
Branches
No related tags found
No related merge requests found
...@@ -17,6 +17,6 @@ publish: ...@@ -17,6 +17,6 @@ publish:
- openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in gradle.properties.enc -out gradle.properties - openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in gradle.properties.enc -out gradle.properties
- openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in pubring.gpg.enc -out pubring.gpg - openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in pubring.gpg.enc -out pubring.gpg
- openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in secring.gpg.enc -out secring.gpg - openssl aes-256-cbc -d -base64 -pbkdf2 -pass "env:ENCRYPTION_PASSWORD" -in secring.gpg.enc -out secring.gpg
- ./gradlew ${GRADLE_ARGS} uploadArchives - ./gradlew ${GRADLE_ARGS} publish
only: only:
- master@general/stups/tlatools - master@general/stups/tlatools
apply plugin: 'java' apply plugin: 'java'
apply plugin: 'eclipse' apply plugin: 'eclipse'
apply plugin: 'maven' apply plugin: "maven-publish"
apply plugin: "signing"
project.version = '1.1.0-SNAPSHOT' project.version = '1.1.0-SNAPSHOT'
project.group = 'de.hhu.stups' project.group = 'de.hhu.stups'
project.archivesBaseName = 'tlatools' project.archivesBaseName = 'tlatools'
final isSnapshot = project.version.endsWith("-SNAPSHOT")
project.sourceCompatibility = JavaVersion.VERSION_1_8 project.sourceCompatibility = JavaVersion.VERSION_1_8
project.targetCompatibility = JavaVersion.VERSION_1_8 project.targetCompatibility = JavaVersion.VERSION_1_8
...@@ -24,10 +27,20 @@ sourceSets { ...@@ -24,10 +27,20 @@ sourceSets {
} }
} }
java {
withSourcesJar()
withJavadocJar()
}
javadoc { javadoc {
failOnError = false failOnError = false
} }
sourcesJar {
// Ignore duplicates because the same directory is used for sources and resources.
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
task tlatools(type: Copy, dependsOn: build) { task tlatools(type: Copy, dependsOn: build) {
from('build/libs/') from('build/libs/')
into('build/tlatools') into('build/tlatools')
...@@ -35,75 +48,55 @@ task tlatools(type: Copy, dependsOn: build) { ...@@ -35,75 +48,55 @@ task tlatools(type: Copy, dependsOn: build) {
rename('tlatools-(.+)', 'tlatools.jar') rename('tlatools-(.+)', 'tlatools.jar')
} }
if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword')) { publishing {
println "Configuring deployment for ${ project.name }" publications {
mavenJava(MavenPublication) {
apply plugin: 'signing' pom {
name = "TLA+ Tools"
task javadocJar(type: Jar) { description = "Modified version of the TLA+ tools for usage in ProB"
classifier = 'javadoc' url = "https://github.com/hhu-stups/tlatools"
from javadoc
}
task sourcesJar(type: Jar) {
classifier = 'sources'
from sourceSets.main.allSource
// Ignore duplicates because the same directory is used for sources and resources.
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
artifacts {
archives javadocJar, sourcesJar
}
ext."signing.secretKeyRingFile" = rootProject.file("secring.gpg").absolutePath
signing {
sign configurations.archives
}
uploadArchives {
repositories {
mavenDeployer {
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
authentication(userName: ossrhUsername, password: ossrhPassword)
}
snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
authentication(userName: ossrhUsername, password: ossrhPassword)
}
pom.project {
name "TLA+ Tools"
packaging 'jar'
// optionally artifactId can be defined here
description 'Modified version of the TLA+ tools for usage in ProB'
url 'https://github.com/hhu-stups/tlatools'
licenses { licenses {
license { license {
name 'MIT License' name = "MIT License"
url 'http://research.microsoft.com/en-us/um/people/lamport/tla/license.html' url = "http://research.microsoft.com/en-us/um/people/lamport/tla/license.html"
} }
} }
scm { scm {
connection 'scm:git:git://github.com/hhu-stups/tlatools.git' connection = "scm:git:git://github.com/hhu-stups/tlatools.git"
developerConnection 'scm:git:git@github.com:hhu-stups/tlatools.git' developerConnection = "scm:git:git@github.com:hhu-stups/tlatools.git"
url 'https://github.com/hhu-stups/tlatools' url = "https://github.com/hhu-stups/tlatools"
} }
developers { developers {
developer { developer {
id 'bendisposto' id = "bendisposto"
name 'Jens Bendisposto' name = "Jens Bendisposto"
email 'jens@bendisposto.de' email = "jens@bendisposto.de"
} }
} }
} }
} }
} }
repositories {
maven {
final releasesRepoUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2"
final snapshotsRepoUrl = "https://oss.sonatype.org/content/repositories/snapshots"
url isSnapshot ? snapshotsRepoUrl : releasesRepoUrl
if (project.hasProperty("ossrhUsername") && project.hasProperty("ossrhPassword")) {
credentials {
username project.ossrhUsername
password project.ossrhPassword
}
}
}
}
} }
ext."signing.secretKeyRingFile" = rootProject.file("secring.gpg").absolutePath
signing {
sign publishing.publications.mavenJava
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment