-
Notifications
You must be signed in to change notification settings - Fork 24
/
build.gradle
128 lines (108 loc) · 3.32 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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/*
* Copyright 2012 ish group pty ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'au.com.ish.gradle:release:2.1.2'
}
}
apply plugin: 'groovy'
apply plugin: 'maven'
apply plugin: 'signing'
apply plugin: 'release'
release {
//use git scm, unless otherwise specified in with -PscmFlavour= or in users gradle properties
scm = 'git'
failOnSnapshotDependencies = false
//properties for svn access
username = project.hasProperty('username') ? project.username : ''
password = project.hasProperty('password') ? project.password : ''
//the following two params have to be converted from string to boolean
releaseDryRun = project.hasProperty('releaseDryRun') ? project.releaseDryRun=='true' : ''
allowLocalModifications = project.hasProperty('allowLocalModifications') ? project.allowLocalModifications='true' : ''
}
version = release.projectVersion
group = 'au.com.ish.gradle'
repositories {
mavenCentral()
}
dependencies {
compile gradleApi()
compile 'org.tmatesoft.svnkit:svnkit:1.8.12'
compile 'org.eclipse.jgit:org.eclipse.jgit:4.4.0.201606070830-r'
testCompile 'junit:junit:4.12'
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives sourcesJar
archives javadocJar
}
signing {
required = { gradle.taskGraph.hasTask("uploadArchives") && !version.endsWith("SNAPSHOT") }
sign configurations.archives
}
uploadArchives.repositories.mavenDeployer {
uniqueVersion = false
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
authentication(userName: sonatypeUsername, password: sonatypePassword)
}
repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
authentication(userName: sonatypeUsername, password: sonatypePassword)
}
pom.project {
name 'Gradle Release plugin'
packaging 'jar'
description 'The Gradle Release plugin.'
url 'http://github.com/ari/gradle-release-plugin'
inceptionYear '2012'
scm {
developerConnection 'git@github.com:ari/gradle-release-plugin.git'
connection 'git://github.com/ari/gradle-release-plugin.git'
url 'https://github.com/ari/gradle-release-plugin'
}
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
distribution 'repo'
}
}
developers {
developer {
id 'ari'
name 'Ari Maniatis'
email 'ari@ish.com.au'
roles {
role 'Developer'
}
timezone '+10'
}
}
}
}
task wrapper(type: Wrapper) {
gradleVersion = '2.14'
}