Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 1 | buildscript { |
Cedric Beust | 29fe72f | 2015-05-25 22:01:11 -0700 | [diff] [blame] | 2 | |
| 3 | def a_user = hasProperty('artifactory_user') ? artifactory_user : System.getenv('artifactory_user') |
| 4 | def a_password = hasProperty('artifactory_password') ? artifactory_password : System.getenv('artifactory_password') |
| 5 | |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 6 | repositories { |
| 7 | mavenCentral() |
| 8 | jcenter() |
| 9 | maven { |
| 10 | url 'http://dl.bintray.com/cbeust/maven' |
Cedric Beust | 576120b | 2015-05-25 21:02:31 -0700 | [diff] [blame] | 11 | } |
| 12 | maven { |
| 13 | url 'http://oss.jfrog.org/artifactory/plugins-release' |
| 14 | credentials { |
Cedric Beust | 29fe72f | 2015-05-25 22:01:11 -0700 | [diff] [blame] | 15 | username = "${a_user}" |
| 16 | password = "${a_password}" |
Cedric Beust | 576120b | 2015-05-25 21:02:31 -0700 | [diff] [blame] | 17 | } |
| 18 | } |
| 19 | } |
| 20 | |
| 21 | dependencies { |
| 22 | //Check for the latest version here: http://plugins.gradle.org/plugin/com.jfrog.artifactory |
| 23 | classpath "org.jfrog.buildinfo:build-info-extractor-gradle:3.0.3" |
Cedric Beust | 551ccd5 | 2015-07-14 11:09:17 -0700 | [diff] [blame] | 24 | classpath "io.codearte.gradle.nexus:gradle-nexus-staging-plugin:0.5.3" |
Julien Herr | 39aaf03 | 2015-10-31 15:22:40 +0100 | [diff] [blame] | 25 | classpath "com.netflix.nebula:gradle-extra-configurations-plugin:3.0.3" |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 26 | } |
| 27 | } |
| 28 | |
| 29 | plugins { |
Cedric Beust | ef1fd54 | 2015-07-15 10:35:09 -0700 | [diff] [blame] | 30 | id "com.jfrog.bintray" version "1.2" |
Cedric Beust | 84697c0 | 2015-07-11 15:01:41 -0700 | [diff] [blame] | 31 | id "com.jfrog.artifactory" version "3.1.1" |
Julien Herr | 141d3ae | 2015-10-22 22:43:24 +0200 | [diff] [blame] | 32 | id "org.sonarqube" version "1.0" |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 33 | } |
| 34 | |
Cedric Beust | 64349ff | 2015-10-27 00:13:23 -0700 | [diff] [blame] | 35 | version = '6.9.10-SNAPSHOT' |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 36 | |
| 37 | apply plugin: 'java' |
Julien Herr | 39aaf03 | 2015-10-31 15:22:40 +0100 | [diff] [blame] | 38 | apply plugin: 'nebula.optional-base' |
| 39 | apply plugin: 'nebula.provided-base' |
Cedric Beust | c642de6 | 2015-10-12 21:17:06 -0700 | [diff] [blame] | 40 | |
| 41 | targetCompatibility = "1.7" |
| 42 | sourceCompatibility = "1.7" |
| 43 | |
Mathieu SEBIRE | 800cb34 | 2015-07-22 22:42:08 +0200 | [diff] [blame] | 44 | apply plugin: 'osgi' |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 45 | |
| 46 | repositories { |
| 47 | mavenCentral() |
| 48 | jcenter() |
| 49 | maven { |
| 50 | url 'http://dl.bintray.com/cbeust/maven' |
| 51 | } |
| 52 | } |
| 53 | |
| 54 | dependencies { |
Julien Herr | a685f86 | 2015-10-31 15:23:54 +0100 | [diff] [blame] | 55 | compile 'org.beanshell:bsh:2.0b4' |
| 56 | compile 'com.beust:jcommander:1.48' |
| 57 | |
Julien Herr | 39aaf03 | 2015-10-31 15:22:40 +0100 | [diff] [blame] | 58 | compile 'org.apache.ant:ant:1.7.0', optional |
| 59 | compile 'junit:junit:4.10', optional |
Julien Herr | 39aaf03 | 2015-10-31 15:22:40 +0100 | [diff] [blame] | 60 | compile 'org.yaml:snakeyaml:1.15', optional |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 61 | |
Julien Herr | a685f86 | 2015-10-31 15:23:54 +0100 | [diff] [blame] | 62 | provided 'com.google.inject:guice:4.0:no_aop' |
| 63 | |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 64 | testCompile 'org.assertj:assertj-core:2.0.0' |
| 65 | testCompile 'org.testng:testng:6.9.4' |
| 66 | } |
| 67 | |
| 68 | task sourceJar(type: Jar) { |
| 69 | group 'Build' |
| 70 | description 'An archive of the source code' |
| 71 | classifier 'sources' |
| 72 | from sourceSets.main.allSource |
| 73 | } |
| 74 | |
| 75 | artifacts { |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 76 | sourceJar |
| 77 | } |
| 78 | |
| 79 | import org.apache.tools.ant.filters.ReplaceTokens |
| 80 | |
Cedric Beust | 98fbd6d | 2015-05-11 13:53:55 -0700 | [diff] [blame] | 81 | def generatedSourcesFolder = projectDir.toString() + '/src/generated/java' |
| 82 | |
| 83 | def dirFrom = projectDir.toString() + '/src/main/resources/org/testng/internal' |
| 84 | def dirTo = generatedSourcesFolder + "/org/testng/internal" |
| 85 | def fileFrom = 'VersionTemplateJava' |
| 86 | def fileTo = 'Version.java' |
| 87 | |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 88 | task removeVersion { |
Cedric Beust | 98fbd6d | 2015-05-11 13:53:55 -0700 | [diff] [blame] | 89 | delete dirTo + fileTo |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 90 | } |
| 91 | |
Cedric Beust | 71f6797 | 2015-05-10 22:38:40 -0700 | [diff] [blame] | 92 | sourceSets { |
| 93 | generated { |
| 94 | java { |
| 95 | srcDir 'src/generated/java' |
| 96 | } |
| 97 | resources { |
| 98 | srcDir 'src/generated/resources' |
| 99 | } |
| 100 | } |
| 101 | } |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 102 | |
Cedric Beust | 71f6797 | 2015-05-10 22:38:40 -0700 | [diff] [blame] | 103 | sourceSets { |
| 104 | main { |
| 105 | compileClasspath += generated.output |
| 106 | runtimeClasspath += generated.output |
| 107 | } |
| 108 | } |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 109 | |
Cedric Beust | 71f6797 | 2015-05-10 22:38:40 -0700 | [diff] [blame] | 110 | gradle.projectsEvaluated { |
| 111 | compileJava.dependsOn(myDir) |
| 112 | } |
| 113 | |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 114 | task myDir { |
Cedric Beust | 98fbd6d | 2015-05-11 13:53:55 -0700 | [diff] [blame] | 115 | delete dirTo + "/" + fileTo |
| 116 | mkdir(dirTo) |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 117 | } |
| 118 | |
Cedric Beust | 6583ca9 | 2015-05-23 12:16:18 -0700 | [diff] [blame] | 119 | // Include the generated Version.class in the jar |
| 120 | jar { |
Mathieu SEBIRE | 800cb34 | 2015-07-22 22:42:08 +0200 | [diff] [blame] | 121 | manifest { |
| 122 | instruction 'Bundle-License', 'http://apache.org/licenses/LICENSE-2.0' |
| 123 | instruction 'Bundle-Description', 'TestNG is a testing framework.' |
| 124 | instruction 'Import-Package', |
| 125 | 'bsh.*;version="[2.0.0,3.0.0)";resolution:=optional', |
| 126 | 'com.beust.jcommander.*;version="[1.7.0,3.0.0)";resolution:=optional', |
| 127 | 'com.google.inject.*;version="[1.2,1.3)";resolution:=optional', |
| 128 | 'junit.framework;version="[3.8.1, 5.0.0)";resolution:=optional', |
| 129 | 'org.junit.*;resolution:=optional', |
| 130 | 'org.apache.tools.ant.*;version="[1.7.0, 2.0.0)";resolution:=optional', |
| 131 | 'org.yaml.*;version="[1.6,2.0)";resolution:=optional', |
| 132 | '!com.beust.testng', |
| 133 | '!org.testng.*', |
| 134 | '!com.sun.*', |
| 135 | '*' |
| 136 | } |
Cedric Beust | 6583ca9 | 2015-05-23 12:16:18 -0700 | [diff] [blame] | 137 | from "$buildDir/classes/generated" |
| 138 | } |
| 139 | |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 140 | task createVersion(type: Copy, dependsOn: myDir) { |
| 141 | println("Creating Version file: ${version} in ${dirTo}") |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 142 | from dirFrom |
Cedric Beust | 98fbd6d | 2015-05-11 13:53:55 -0700 | [diff] [blame] | 143 | include fileFrom |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 144 | into(dirTo) |
Cedric Beust | 98fbd6d | 2015-05-11 13:53:55 -0700 | [diff] [blame] | 145 | rename(fileFrom, fileTo) |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 146 | filter(ReplaceTokens, tokens: [version: version]) |
Cedric Beust | 71f6797 | 2015-05-10 22:38:40 -0700 | [diff] [blame] | 147 | } |
| 148 | |
| 149 | compileJava.dependsOn(createVersion) |
| 150 | |
| 151 | test { |
| 152 | useTestNG() { |
| 153 | suites 'src/test/resources/testng.xml' |
| 154 | } |
Cedric Beust | 962f7ad | 2015-06-30 07:19:10 -0700 | [diff] [blame] | 155 | // testLogging.showStandardStreams = true |
Krishnan Mahadevan | a9e2d61 | 2015-05-12 08:24:06 +0530 | [diff] [blame] | 156 | systemProperties = System.getProperties() |
| 157 | systemProperties['test.resources.dir'] = 'build/resources/test/' |
Cedric Beust | 0730d08 | 2015-05-10 21:52:20 -0700 | [diff] [blame] | 158 | } |
Cedric Beust | 8771b43 | 2015-05-31 14:15:43 -0700 | [diff] [blame] | 159 | |
| 160 | if (JavaVersion.current().isJava8Compatible()) { |
| 161 | allprojects { |
| 162 | tasks.withType(Javadoc) { |
| 163 | options.addStringOption('Xdoclint:none', '-quiet') |
| 164 | } |
| 165 | } |
| 166 | } |
Cedric Beust | 0179439 | 2015-07-11 16:20:39 -0700 | [diff] [blame] | 167 | |
Julien Herr | 141d3ae | 2015-10-22 22:43:24 +0200 | [diff] [blame] | 168 | sonarqube { |
| 169 | properties { |
| 170 | property "sonar.host.url", "http://nemo.sonarqube.org" |
| 171 | property "sonar.analysis.mode", "preview" |
| 172 | property "sonar.github.repository", "cbeust/testng" |
| 173 | property "sonar.github.login", "testng-bot" |
| 174 | } |
| 175 | } |
| 176 | |
Cedric Beust | 0179439 | 2015-07-11 16:20:39 -0700 | [diff] [blame] | 177 | apply from: 'gradle/publishing.gradle' |