-
Notifications
You must be signed in to change notification settings - Fork 2
/
publish.gradle
69 lines (60 loc) · 2.53 KB
/
publish.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
apply plugin: 'maven-publish'
apply plugin: 'signing'
publishing {
publications {
all {
pom {
url = 'https://github.com/xenit-eu/xenit-testcontainers'
name = project.name
description = "Extension on top of https://www.testcontainers.org/, making it easy to startup Alfresco or Alfred containers in JUnit tests."
scm {
connection = 'scm:git:[email protected]:xenit-eu/xenit-testcontainers.git'
developerConnection = 'scm:git:[email protected]:xenit-eu/xenit-testcontainers.git'
url = 'https://github.com/xenit-eu/xenit-testcontainers.git'
}
developers {
developer {
id = "xenit"
name = "Xenit Solutions NV"
}
}
licenses {
license {
name = 'The Apache License, Version 2.0'
url = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
}
}
}
repositories {
maven {
def releasesRepoUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
def snapshotsRepoUrl = "https://oss.sonatype.org/content/repositories/snapshots/"
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
credentials {
username = project.hasProperty('de_publish_username') ? project.de_publish_username : ''
password = project.hasProperty('de_publish_password') ? project.de_publish_password : ''
}
}
}
}
afterEvaluate {
signing {
required { !version.endsWith('SNAPSHOT') && gradle.taskGraph.hasTask("publish") }
sign publishing.publications
}
}
gradle.taskGraph.whenReady { graph ->
if (graph.hasTask(publish)) {
if (!project.hasProperty('keyId') || !project.hasProperty('secretKeyRingFile') || !project.hasProperty('password')) {
throw new GradleException('You need to provide signing params in order to sign artifacts')
}
def id = project.hasProperty('keyId') ? project.keyId : ''
def file = project.hasProperty('secretKeyRingFile') ? project.secretKeyRingFile : ''
def password = project.hasProperty('password') ? project.password : ''
ext."signing.keyId" = id
ext."signing.secretKeyRingFile" = file
ext."signing.password" = password
}
}