forked from rahulbaphana/book-my-tickets
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathextension.gradle
112 lines (93 loc) · 2.99 KB
/
extension.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
105
106
107
108
109
110
111
112
version = "0.1"
group = "com.demo.book"
micronaut {
runtime("netty")
testRuntime("kotest")
processing {
incremental(true)
annotations("com.demo.book.*")
}
}
sourceSets.main.kotlin.srcDirs += "src/main/gen"
dependencies {
kapt("io.micronaut:micronaut-http-validation")
implementation "io.micronaut:micronaut-http-client"
implementation "io.micronaut:micronaut-runtime"
implementation "io.micronaut.kotlin:micronaut-kotlin-runtime"
implementation "io.micronaut.liquibase:micronaut-liquibase"
implementation "javax.annotation:javax.annotation-api"
implementation "org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}"
implementation("javax.inject:javax.inject:1")
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}"
implementation "io.micronaut:micronaut-validation"
implementation 'com.medly:ktee:1.0.0'
implementation("io.micronaut.security:micronaut-security-annotations")
implementation("io.micronaut.security:micronaut-security-jwt")
runtimeOnly "ch.qos.logback:logback-classic"
runtimeOnly "com.fasterxml.jackson.module:jackson-module-kotlin"
testImplementation "com.fasterxml.jackson.module:jackson-module-kotlin"
testImplementation "io.mockk:mockk:1.10.2"
testImplementation "org.testcontainers:testcontainers"
testImplementation "com.medly.norm:runtime:$normVersion"
testImplementation "com.fasterxml.jackson.module:jackson-module-kotlin"
}
application {
mainClass.set("com.demo.book.ApplicationKt")
}
tasks {
jacocoTestReport {
dependsOn test // tests are required to run before generating the report
reports {
xml.enabled false
csv.enabled false
html.destination layout.buildDirectory.dir('jacocoHtml').get().asFile
}
}
jacocoTestCoverageVerification {
violationRules {
rule {
limit {
minimum = 0.8
}
}
}
}
check.dependsOn jacocoTestCoverageVerification
dockerBuild {
images = ["${System.env.DOCKER_IMAGE ?: project.name}:$project.version"]
}
dockerBuildNative {
images = ["${System.env.DOCKER_IMAGE ?: project.name}:$project.version"]
}
}
test {
useJUnitPlatform()
testLogging {
events "PASSED", "FAILED", "SKIPPED"
exceptionFormat "full"
}
}
compileKotlin {
kotlinOptions {
jvmTarget = '11'
//Will retain parameter names for Java reflection
javaParameters = true
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = '11'
javaParameters = true
}
}
norm {
jdbcUrl = "jdbc:postgresql://localhost:5432/bmt_db"
username = "postgres"
password = ""
inputDir = file("src/main/sql")
outDir = file("src/main/gen")
basePath = file("src/main/kotlin/com/demo/book")
}
task buildWithLint(dependsOn: ['build', 'ktlintCheck'])
task stage(dependsOn: ['assemble', 'clean'])
assemble.mustRunAfter clean