-
Notifications
You must be signed in to change notification settings - Fork 18
/
Copy pathbuild.gradle
66 lines (54 loc) · 2.19 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
import java.text.SimpleDateFormat
plugins {
id "java"
id "application"
id "groovy"
}
def group = "org.isaqb"
def releaseVersion = System.getenv("RELEASE_VERSION")
def localVersion = "LocalBuild"
project.version = releaseVersion == null ? localVersion : releaseVersion
def curriculumFileName = "glossary"
def versionDate = new SimpleDateFormat("yyyyMMdd").format(new Date())
def languages = ["DE", "EN"]
repositories {
mavenCentral()
}
dependencies {
implementation("org.asciidoctor:asciidoctorj:2.5.10")
implementation("org.asciidoctor:asciidoctorj-pdf:2.3.9")
implementation platform('org.apache.groovy:groovy-bom:4.0.24')
implementation 'org.apache.groovy:groovy'
implementation 'org.apache.groovy:groovy-json:3.0.23'
testImplementation platform("org.spockframework:spock-bom:2.3-groovy-4.0")
testImplementation "org.spockframework:spock-core"
testImplementation "org.apache.groovy:groovy-json:3.0.23"
}
tasks.register('createFiles', JavaExec) {
mustRunAfter("sortTermsAlphabetically", "generateTranslationTables")
classpath = sourceSets.main.runtimeClasspath
mainClass.set("org.isaqb.asciidoc.Main")
jvmArgs = [
"""-DprojectVersion=${project.version}""",
"""-DcurriculumFileName=${curriculumFileName}""",
"""-DversionDate=${versionDate}""",
"""-Dlanguages=${languages.join(',')}""",
"""--add-opens""", """java.base/sun.nio.ch=ALL-UNNAMED""",
"""--add-opens""", """java.base/java.io=ALL-UNNAMED"""]
}
tasks.register('generateTranslationTables', JavaExec) {
dependsOn tasks.compileGroovy
jvmArgs = ['--add-opens', 'java.base/java.lang=ALL-UNNAMED',
'--add-opens', 'java.base/java.io=ALL-UNNAMED',
'--add-opens', 'java.base/java.util=ALL-UNNAMED']
classpath = sourceSets.main.runtimeClasspath
mainClass = 'Translator'
}
apply from: 'scripts/sortTermsAlphabetically.gradle'
apply from: 'scripts/generateTermTables.gradle'
tasks.register('buildDocs') {
description = 'Grouping task for generating all languages in several formats'
group = 'documentation'
dependsOn "sortTermsAlphabetically", "generateTranslationTables", "createFiles"
}
defaultTasks "buildDocs"