forked from tschulte/gradle-semantic-release-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
92 lines (78 loc) · 2.65 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
apply plugin: 'de.gliderpilot.semantic-release'
apply plugin: 'idea'
apply plugin: 'eclipse'
apply plugin: 'com.github.ben-manes.versions'
apply from: 'gradle/credentials.gradle'
apply from: 'gradle/compile.gradle'
apply from: 'gradle/publishing.gradle'
apply from: 'gradle/publish-plugin.gradle'
apply from: 'gradle/bintray.gradle'
apply from: 'gradle/artifactory.gradle'
apply from: 'gradle/code-quality.gradle'
apply from: 'gradle/code-coverage.gradle'
buildscript {
repositories {
jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.1'
classpath 'org.jfrog.buildinfo:build-info-extractor-gradle:4.7.5'
classpath 'nl.javadude.gradle.plugins:license-gradle-plugin:0.11.0'
classpath 'net.saliman:gradle-cobertura-plugin:2.3.2'
classpath 'org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.6.3'
classpath 'com.github.ben-manes:gradle-versions-plugin:0.13.0'
classpath "com.gradle.publish:plugin-publish-plugin:0.9.9"
}
}
apply from: 'compile-dependencies.gradle'
dependencies {
testCompile 'com.netflix.nebula:nebula-test:6.5.0', {
exclude module: 'groovy-all'
exclude module: 'org.spockframework'
}
testCompile 'com.github.spockframework.spock:spock-bom:master'
testCompile 'org.apache.commons:commons-exec:1.3'
}
// workaround for tests to run (see http://stackoverflow.com/questions/29377544/my-gradle-project-depends-on-commons-io-2-4-but-gradle-puts-gradle-home-common)
sourceSets {
test {
runtimeClasspath -= files("$gradle.gradleHomeDir/lib/commons-io-1.4.jar")
}
}
group = 'org.fidata.gradle.semantic-release'
semanticRelease {
repo.ghToken = project.ext.ghToken
}
task integTest {
dependsOn cleanIntegTest, test
}
cleanIntegTest {
delete new File(buildDir, 'nebulatest')
}
test {
dependsOn cleanTest
}
cleanTest {
delete new File(buildDir, 'nebulatest')
}
artifactoryPublish.dependsOn publish
tasks['release'].finalizedBy artifactoryPublish
test {
if (gradle.startParameter.taskNames.find { ['integTest', 'release'].contains(it) })
systemProperty 'integTest', 'true'
maxHeapSize = '512m'
jvmArgs '-XX:MaxPermSize=256m'
}
repositories {
maven { url 'https://jitpack.io' }
maven {
url "${artifactory_contextUrl}/plugins-release" //The Artifactory (preferably virtual) repository to resolve from
credentials { //Optional resolver credentials (leave out to use anonymous resolution)
username = artifactory_user
password = artifactory_password
}
}
}