/* * Copyright (c) 2018 Clivern. . All rights reserved. */ // /opt/gradle/bin/gradle -b maven-push.gradle uploadArchives apply from: 'build.gradle' apply plugin: 'maven' apply plugin: 'signing' def isReleaseBuild() { return POM_VERSION.contains("SNAPSHOT") == false } def getReleaseRepositoryUrl() { return hasProperty('RELEASE_REPOSITORY_URL') ? RELEASE_REPOSITORY_URL : "https://oss.sonatype.org/service/local/staging/deploy/maven2/" } def getSnapshotRepositoryUrl() { return hasProperty('SNAPSHOT_REPOSITORY_URL') ? SNAPSHOT_REPOSITORY_URL : "https://oss.sonatype.org/content/repositories/snapshots/" } def getRepositoryUsername() { return hasProperty('NEXUS_USERNAME') ? NEXUS_USERNAME : "" } def getRepositoryPassword() { return hasProperty('NEXUS_PASSWORD') ? NEXUS_PASSWORD : "" } afterEvaluate { project -> uploadArchives { repositories { mavenDeployer { beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } pom.groupId = POM_GROUP_ID pom.artifactId = POM_ARTIFACT_ID pom.version = POM_VERSION repository(url: getReleaseRepositoryUrl()) { authentication(userName: getRepositoryUsername(), password: getRepositoryPassword()) } snapshotRepository(url: getSnapshotRepositoryUrl()) { authentication(userName: getRepositoryUsername(), password: getRepositoryPassword()) } pom.project { groupId POM_GROUP_ID artifactId POM_ARTIFACT_ID version POM_VERSION name POM_NAME description POM_DESCRIPTION url POM_URL licenses { license { name POM_LICENSE_NAME url POM_LICENSE_URL distribution POM_LICENSE_DISTRIBUTION } } developers { developer { id POM_DEVELOPER_ID name POM_DEVELOPER_NAME email POM_DEVELOPER_EMAIL url POM_DEVELOPER_URL roles { role POM_DEVELOPER_ROLE } } } scm { url POM_SCM_URL connection POM_SCM_CONNECTION developerConnection POM_SCM_DEVELOPER_CONNECTION } } } } } signing { required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") } sign configurations.archives } task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from tasks.javadoc.destinationDir } task sourcesJar(type: Jar) { from sourceSets.main.allSource classifier = 'sources' } artifacts { archives jar archives javadocJar archives sourcesJar } }