-
Notifications
You must be signed in to change notification settings - Fork 7
/
build.gradle
104 lines (74 loc) · 2.35 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
import de.undercouch.gradle.tasks.download.Download
import de.undercouch.gradle.tasks.download.Verify
buildscript {
repositories {
mavenLocal()
mavenCentral()
jcenter()
}
dependencies {
classpath group: 'de.undercouch', name: 'gradle-download-task', version: '3.3.0'
}
}
group 'org.ozoneplatform'
version '1.2.3-1'
apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'maven-publish'
apply plugin: 'de.undercouch.download'
ext {
tomcatVersion = '8.5.23'
tomcatDownloadUrl = "http://archive.apache.org/dist/tomcat/tomcat-8/v${tomcatVersion}/bin"
tomcatDownloadFilename = "apache-tomcat-${tomcatVersion}-windows-x86.zip"
tomcatDownloadMd5 = 'd5433dae3cf986cabe1350b450939458'
downloadDir = "$buildDir/download"
stagingDir = "$buildDir/staging"
tomcatStagingDir = "$stagingDir/tomcat"
}
task downloadTomcat(type: Download, group: 'bundle') {
overwrite false
src "$tomcatDownloadUrl/$tomcatDownloadFilename"
dest file("$downloadDir/$tomcatDownloadFilename")
}
task verifyTomcatDownload(type: Verify, group: 'bundle') {
dependsOn(downloadTomcat)
src downloadTomcat.dest
algorithm 'MD5'
checksum tomcatDownloadMd5
}
task extractTomcat(type: Copy, group: 'bundle') {
dependsOn(verifyTomcatDownload)
from zipTree(downloadTomcat.dest)
into file(stagingDir)
}
task renameTomcatFolder(type: Delete, group: 'bundle') {
dependsOn(extractTomcat)
doFirst {
file("$stagingDir/apache-tomcat-${tomcatVersion}").renameTo(file(tomcatStagingDir))
}
delete("$stagingDir/apache-tomcat-${tomcatVersion}")
}
task deleteTomcatExampleWebapps(type: Delete, group: 'bundle') {
dependsOn(renameTomcatFolder)
delete("$tomcatStagingDir/webapps/docs",
"$tomcatStagingDir/webapps/examples",
"$tomcatStagingDir/webapps/host-manager",
"$tomcatStagingDir/webapps/manager",
"$tomcatStagingDir/webapps/ROOT")
}
task buildCustomTomcatZip(type: Zip, group: 'bundle') {
dependsOn(deleteTomcatExampleWebapps)
from file(stagingDir)
archiveName "custom-tomcat.zip"
destinationDir buildDir
}
artifacts {
archives(buildCustomTomcatZip.archivePath) {
type 'zip'
builtBy buildCustomTomcatZip
}
}
build.dependsOn(buildCustomTomcatZip)
task wrapper(type: Wrapper) {
gradleVersion = '4.2.1'
}