-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle.kts
102 lines (80 loc) · 2.2 KB
/
build.gradle.kts
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
plugins {
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.kotlin.serialization)
alias(libs.plugins.kotlinx.kover)
alias(libs.plugins.ktor)
}
group = "com.arnyminerz.escalaralcoiaicomtat.backend"
version = file("package/version.txt").readText().trim()
repositories {
mavenCentral()
maven("https://jitpack.io")
}
dependencies {
// Ktor dependencies
implementation(libs.ktor.server.cachingHeaders)
implementation(libs.ktor.server.conditionalHeaders)
implementation(libs.ktor.server.contentNegotiation)
implementation(libs.ktor.server.core)
implementation(libs.ktor.server.cors)
implementation(libs.ktor.server.netty)
implementation(libs.ktor.server.statusPages)
implementation(libs.ktor.utils)
// Ktor client for making requests
implementation(libs.ktor.client.contentNegotiation)
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.cio)
// Kotlin Serialization & Ktor Serialization
implementation(libs.kotlin.serializationJson)
implementation(libs.ktor.serializationJson)
// Exposed dependencies
implementation(libs.exposed.core)
implementation(libs.exposed.dao)
implementation(libs.exposed.jdbc)
implementation(libs.exposed.javaTime)
implementation(libs.exposed.json)
// Database engines
implementation(libs.postgresql)
implementation(libs.h2)
// For displaying progress bar in terminal
implementation(libs.progressbar)
// Crowdin localization
implementation(libs.crowdin)
// WebP image support
implementation(libs.imageio.webp)
// Firebase
implementation(libs.firebase.admin)
testImplementation(libs.kotlin.test)
// Add Ktor's testing dependencies
testImplementation(libs.ktor.test.server)
}
tasks.test {
useJUnitPlatform()
}
kotlin {
jvmToolchain(21)
sourceSets {
all {
resources.srcDir(file("package"))
}
}
}
ktor {
fatJar {
}
}
application {
mainClass.set("MainKt")
}
kover {
reports {
filters {
excludes {
annotatedBy("KoverIgnore")
}
}
verify {
// verification rules for all reports
}
}
}