forked from microsoft/ApplicationInsights-Java
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
98 lines (86 loc) · 3.25 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
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
/*
* ApplicationInsights-Java
* Copyright (c) Microsoft Corporation
* All rights reserved.
*
* MIT License
* Permission is hereby granted, free of charge, to any person obtaining a copy of this
* software and associated documentation files (the ""Software""), to deal in the Software
* without restriction, including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software, and to permit
* persons to whom the Software is furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all copies or
* substantial portions of the Software.
* THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
plugins {
id 'idea'
id "com.github.johnrengelman.shadow" version "6.1.0" apply false
id "org.owasp.dependencycheck" version "6.1.5"
id "com.diffplug.spotless" version "5.11.1"
id "com.github.spotbugs" version "4.7.0" apply false
id "com.github.ben-manes.versions" version "0.38.0"
}
ext.buildScriptsDir = "$rootDir/gradle"
apply from: "$buildScriptsDir/common.gradle"
apply from: "$buildScriptsDir/dependencies.gradle"
ext {
isBuildServer = (System.properties["isBuildServer"] ?: "false").toBoolean()
isRelease = (System.properties["isRelease"] ?: "false").toBoolean()
if (isBuildServer) {
logger.lifecycle "Building on SERVER"
}
else {
logger.lifecycle "Building on DESKTOP"
}
}
allprojects {
task generateLockfiles {
doFirst {
assert gradle.startParameter.writeDependencyLocks // meaning you must run with --write-locks parameter
}
doLast {
configurations.findAll {
it.canBeResolved
}.each {
it.resolve()
}
}
}
tasks.register('resolveDependencies') {
enabled !configurations.isEmpty()
configurations.findAll { c ->
c.allDependencies.findAll { d ->
d instanceof ProjectDependency
}.each { d ->
dependsOn d.getDependencyProject().tasks.named('resolveDependencies')
}
}
doLast {
configurations.findAll {
it.canBeResolved
}.each {
logger.info "Resolving $it"
it.files
}
}
}
tasks.withType(ShadowJar) {
exclude 'META-INF/maven/**'
exclude 'META-INF/LICENSE*'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE*'
from "${rootProject.projectDir}/NOTICE"
from "${rootProject.projectDir}/LICENSE"
}
tasks.withType(Jar) {
from "${rootProject.projectDir}/NOTICE"
from "${rootProject.projectDir}/LICENSE"
}
}