-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.gradle
85 lines (74 loc) · 2.29 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
ext {
componentName='Interlok Management/REST: Prometheus'
componentDesc="Expose metrics in a OpenTelemetry compliant fashion"
delombokTargetDir = new File("${project.projectDir}/src/main/generated")
}
dependencies {
api project(':interlok-rest-base')
api project(':interlok-rest-metrics-jvm')
api ('io.micrometer:micrometer-registry-prometheus:1.12.5')
testImplementation project(':interlok-rest-base').sourceSets.test.output
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
task examplesJar(type: Jar, dependsOn: test) {
classifier = 'examples'
from new File(buildDir, '/examples')
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.extensions.delombokTask
}
jar {
manifest {
attributes("Built-By": System.getProperty('user.name'),
"Build-Jdk": System.getProperty('java.version'),
"Implementation-Title": componentName,
"Implementation-Version": project.version,
"Implementation-Vendor-Id": project.group,
"Implementation-Vendor": organizationName)
}
}
artifacts {
archives javadocJar
archives examplesJar
archives sourcesJar
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
artifact javadocJar { classifier "javadoc" }
artifact examplesJar { classifier "examples" }
artifact sourcesJar { classifier "sources" }
pom.withXml {
asNode().appendNode("name", componentName)
asNode().appendNode("description", componentDesc)
asNode().appendNode("url", "https://interlok.adaptris.net/interlok-docs/#/")
def properties = asNode().appendNode("properties")
properties.appendNode("target", "3.8.3+")
properties.appendNode("tags", "rest")
properties.appendNode("license", "false")
properties.appendNode("repository", "https://github.com/adaptris/interlok-workflow-rest-services")
}
}
}
repositories {
maven {
credentials {
username repoUsername
password repoPassword
}
url mavenPublishUrl
}
}
}
delombok {
target = delombokTargetDir
}
task deleteGeneratedFiles(type: Delete) {
delete delombokTargetDir
}
clean.dependsOn deleteGeneratedFiles