| // |
| // Publish to Maven Central |
| // |
| |
| apply plugin: 'maven-publish' |
| apply plugin: 'maven' |
| |
| apply plugin: 'io.codearte.nexus-staging' |
| |
| nexusStaging { |
| packageGroup 'org.testng' |
| username System.getenv('SONATYPE_USER') |
| password System.getenv('SONATYPE_PASSWORD') |
| } |
| |
| javadoc { |
| failOnError false |
| } |
| |
| signing { |
| required { gradle.taskGraph.hasTask("uploadArchives") } |
| sign configurations.archives |
| } |
| |
| publishing { |
| publications { |
| mavenCustom(MavenPublication) { |
| from components.java |
| artifact sourcesJar |
| |
| groupId 'org.testng' |
| artifactId 'testng' |
| version project.version |
| } |
| } |
| } |
| |
| // ./gradlew uploadArchives (upload snapshot to Maven Central's snapshot repo) |
| uploadArchives { |
| repositories { |
| mavenDeployer { |
| beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } |
| |
| repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2") { |
| authentication(userName: System.getenv('SONATYPE_USER'), password: System.getenv('SONATYPE_PASSWORD')) |
| } |
| snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots") { |
| authentication(userName: System.getenv('SONATYPE_USER'), password: System.getenv('SONATYPE_PASSWORD')) |
| } |
| pom { |
| version = project.version |
| artifactId = 'testng' |
| groupId = 'org.testng' |
| project { |
| name project.name |
| description 'Testing framework for Java' |
| url 'http://github.com/cbeust/testng' |
| scm { |
| connection 'scm:git:https://github.com/cbeust/testng.git' |
| developerConnection 'scm:git:[email protected]:cbeust/testng.git' |
| url 'https://github.com/cbeust/testng.git' |
| } |
| licenses { |
| license { |
| name 'Apache Version 2.0, January 2004' |
| distribution 'repo' |
| } |
| } |
| developers { |
| developer { |
| id = 'cbeust' |
| name = 'Cedric Beust' |
| email = '[email protected]' |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| |
| uploadArchives.doLast { |
| if (! version.contains("SNAPSHOT")) { |
| println("Now go to https://oss.sonatype.org/index.html#stagingRepositories to close" + |
| " and publish the distribution") |
| } |
| } |