Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 47 additions & 70 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -65,18 +65,16 @@ subprojects {
apply plugin: 'io.spring.dependency-management'
apply plugin: "com.jfrog.artifactory"
apply plugin: 'com.jfrog.bintray'
apply plugin: 'maven'
apply plugin: 'signing'

group = "org.openmbee.mms"
archivesBaseName = project.name
version = rootProject.version

Map<String, String> commonDependencies = rootProject.ext.commonDependencies

task javadocJar(type: Jar) {
archiveClassifier = "javadoc"
from javadoc
from javadoc.destinationDir
}

task sourcesJar(type: Jar) {
Expand All @@ -96,32 +94,68 @@ subprojects {
}

artifacts {
archives javadocJar, sourcesJar
}

signing {
if (project.hasProperty('signing.keyId') && project.hasProperty('signing.password') && project.hasProperty('signing.secretKeyRingFile')) {
sign configurations.archives
}
archives jar, javadocJar, sourcesJar
}

//https://docs.gradle.org/current/userguide/publishing_maven.html
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
from project.components.java
pom {
name = project.name
description = project.name + ', a module of the MMS'
url = 'http://github.com/OpenMBEE/mms'
licenses {
license {
name = 'The Apache License, Version 2.0'
url = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
developers {
developer {
id = 'huijun'
name = 'Jason Han'
}
developer {
id = 'dlam'
name = 'Doris Lam'
}
developer {
id = 'ward'
name = 'Ward Schweitzer'
}
}
scm {
connection = 'scm:git:https://github.com/Open-MBEE/mms.git'
developerConnection = 'scm:git:https://github.com/Open-MBEE/mms.git'
url = 'https://github.com/Open-MBEE/mms.git'
}
}
}
}

repositories {
maven {
def releasesRepoUrl = "$buildDir/repos/releases"
def snapshotsRepoUrl = "$buildDir/repos/snapshots"
def releasesRepoUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
def snapshotsRepoUrl = "https://oss.sonatype.org/content/repositories/snapshots/"
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword')) {
credentials {
username = ossrhUsername
password = ossrhPassword
}
}
}
}
}

signing {
if (project.hasProperty('signing.keyId') && project.hasProperty('signing.password') && project.hasProperty('signing.secretKeyRingFile')) {
sign publishing.publications.mavenJava
}
}

//https://www.jfrog.com/confluence/display/JFROG/Gradle+Artifactory+Plugin
//can use this or set artifactory info directly under publishing/repositories?
artifactory {
Expand Down Expand Up @@ -157,61 +191,4 @@ subprojects {
vcsUrl = 'https://github.com/Open-MBEE/mms.git'
}
}

uploadArchives {
repositories {
if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword')) {
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 project.name
packaging 'jar'
// optionally artifactId can be defined here
description project.description
url 'http://github.com/OpenMBEE/mms'

scm {
connection 'scm:git:https://github.com/Open-MBEE/mms.git'
developerConnection 'scm:git:https://github.com/Open-MBEE/mms.git'
url 'https://github.com/Open-MBEE/mms.git'
}

licenses {
license {
name 'The Apache License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}

developers {
developer {
id 'huijun'
name 'Jason Han'
}
developer {
id 'dlam'
name 'Doris Lam'
}
developer {
id 'ward'
name 'Ward Schweitzer'
}
}
}
}
}
}
}
}
project('example') {
uploadArchives.enabled = false
}