2023-03-04 12:19:01 +00:00
|
|
|
plugins {
|
|
|
|
id 'java'
|
2023-11-12 14:37:25 +00:00
|
|
|
id 'io.freefair.sass-base' version '8.4'
|
|
|
|
id 'io.freefair.sass-java' version '8.4'
|
2023-03-04 12:19:01 +00:00
|
|
|
id 'application'
|
|
|
|
id 'jvm-test-suite'
|
2024-02-22 13:01:23 +00:00
|
|
|
|
2024-07-31 08:39:50 +00:00
|
|
|
id 'com.google.cloud.tools.jib' version '3.4.3'
|
2024-02-22 13:01:23 +00:00
|
|
|
}
|
|
|
|
|
2023-03-04 12:19:01 +00:00
|
|
|
application {
|
|
|
|
mainClass = 'nu.marginalia.search.SearchMain'
|
|
|
|
applicationName = 'search-service'
|
|
|
|
}
|
|
|
|
|
2023-03-11 10:34:51 +00:00
|
|
|
tasks.distZip.enabled = false
|
|
|
|
|
2023-03-04 12:19:01 +00:00
|
|
|
|
|
|
|
java {
|
|
|
|
toolchain {
|
2024-04-24 11:54:04 +00:00
|
|
|
languageVersion.set(JavaLanguageVersion.of(rootProject.ext.jvmVersion))
|
2023-03-04 12:19:01 +00:00
|
|
|
}
|
|
|
|
}
|
2023-11-12 14:37:25 +00:00
|
|
|
sass {
|
|
|
|
sourceMapEnabled = true
|
|
|
|
sourceMapEmbed = true
|
|
|
|
outputStyle = EXPANDED
|
|
|
|
}
|
2024-02-22 13:01:23 +00:00
|
|
|
|
2024-12-06 14:55:52 +00:00
|
|
|
|
2024-02-23 15:13:40 +00:00
|
|
|
apply from: "$rootProject.projectDir/srcsets.gradle"
|
2024-02-28 10:59:15 +00:00
|
|
|
apply from: "$rootProject.projectDir/docker.gradle"
|
2024-02-23 15:13:40 +00:00
|
|
|
|
2023-03-04 12:19:01 +00:00
|
|
|
dependencies {
|
2023-03-25 14:26:17 +00:00
|
|
|
implementation project(':code:common:db')
|
2023-03-07 16:14:32 +00:00
|
|
|
implementation project(':code:common:model')
|
|
|
|
implementation project(':code:common:service')
|
|
|
|
implementation project(':code:common:config')
|
2024-02-22 17:01:35 +00:00
|
|
|
implementation project(':code:index:query')
|
2023-03-04 12:19:01 +00:00
|
|
|
|
2023-03-07 16:14:32 +00:00
|
|
|
implementation project(':code:libraries:easy-lsh')
|
|
|
|
implementation project(':code:libraries:language-processing')
|
2023-03-11 12:48:40 +00:00
|
|
|
implementation project(':code:libraries:braille-block-punch-cards')
|
2023-03-13 22:40:26 +00:00
|
|
|
implementation project(':code:libraries:term-frequency-dict')
|
2023-03-04 12:19:01 +00:00
|
|
|
|
2024-09-27 11:45:54 +00:00
|
|
|
implementation project(':code:functions:live-capture:api')
|
2024-02-22 13:01:23 +00:00
|
|
|
implementation project(':code:functions:math:api')
|
|
|
|
implementation project(':code:functions:domain-info:api')
|
2024-02-22 14:27:39 +00:00
|
|
|
implementation project(':code:functions:search-query:api')
|
|
|
|
|
|
|
|
|
2024-02-22 17:01:35 +00:00
|
|
|
implementation project(':code:index:api')
|
2023-03-04 12:19:01 +00:00
|
|
|
|
2023-03-12 09:50:31 +00:00
|
|
|
implementation project(':code:features-search:screenshots')
|
|
|
|
implementation project(':code:features-search:random-websites')
|
2023-03-04 12:19:01 +00:00
|
|
|
|
|
|
|
implementation libs.bundles.slf4j
|
|
|
|
|
2023-12-05 14:47:21 +00:00
|
|
|
implementation libs.roaringbitmap
|
2023-03-04 12:19:01 +00:00
|
|
|
implementation libs.prometheus
|
|
|
|
implementation libs.notnull
|
2024-05-23 12:20:01 +00:00
|
|
|
implementation libs.guava
|
|
|
|
implementation dependencies.create(libs.guice.get()) {
|
|
|
|
exclude group: 'com.google.guava'
|
|
|
|
}
|
2023-11-10 14:26:38 +00:00
|
|
|
implementation libs.handlebars
|
2024-05-23 12:20:01 +00:00
|
|
|
implementation dependencies.create(libs.spark.get()) {
|
|
|
|
exclude group: 'org.eclipse.jetty'
|
|
|
|
}
|
|
|
|
implementation libs.bundles.jetty
|
2023-03-04 12:19:01 +00:00
|
|
|
implementation libs.opencsv
|
|
|
|
implementation libs.trove
|
2024-12-05 13:00:17 +00:00
|
|
|
implementation libs.jte
|
2023-03-04 12:19:01 +00:00
|
|
|
implementation libs.fastutil
|
|
|
|
implementation libs.bundles.gson
|
|
|
|
implementation libs.bundles.mariadb
|
|
|
|
implementation libs.bundles.nlp
|
|
|
|
|
|
|
|
testImplementation libs.bundles.slf4j.test
|
|
|
|
testImplementation libs.bundles.junit
|
|
|
|
testImplementation libs.mockito
|
|
|
|
|
2024-05-01 12:27:41 +00:00
|
|
|
testImplementation platform('org.testcontainers:testcontainers-bom:1.17.4')
|
2024-08-25 08:35:48 +00:00
|
|
|
testImplementation libs.commons.codec
|
2024-05-01 12:27:41 +00:00
|
|
|
testImplementation 'org.testcontainers:mariadb:1.17.4'
|
|
|
|
testImplementation 'org.testcontainers:junit-jupiter:1.17.4'
|
|
|
|
testImplementation project(':code:libraries:test-helpers')
|
2023-03-04 12:19:01 +00:00
|
|
|
}
|
|
|
|
|
2024-12-06 14:55:52 +00:00
|
|
|
task compileTailwind {
|
|
|
|
def inputFile = file('tailwind/globals.css')
|
|
|
|
def configFile = file('tailwind/tailwind.config.js')
|
2024-12-06 20:38:36 +00:00
|
|
|
def outputFile = file('resources/static/search/css/style.css')
|
2024-12-06 15:51:19 +00:00
|
|
|
def jteDir = file('resources/jte')
|
2024-12-06 14:55:52 +00:00
|
|
|
|
|
|
|
inputs.file inputFile
|
|
|
|
inputs.file configFile
|
2024-12-06 15:51:19 +00:00
|
|
|
inputs.files fileTree(jteDir).include('**/*.jte')
|
2024-12-06 14:55:52 +00:00
|
|
|
outputs.file outputFile
|
|
|
|
|
|
|
|
doLast {
|
|
|
|
exec {
|
|
|
|
workingDir projectDir
|
|
|
|
if (System.getProperty('os.name').toLowerCase().contains('windows')) {
|
|
|
|
commandLine 'cmd', '/c', 'npx', 'tailwindcss',
|
|
|
|
'-i', inputFile.toString(),
|
|
|
|
'-o', outputFile.toString(),
|
|
|
|
'-c', configFile.toString()
|
|
|
|
} else {
|
|
|
|
commandLine 'npx', 'tailwindcss',
|
|
|
|
'-i', inputFile.toString(),
|
|
|
|
'-o', outputFile.toString(),
|
|
|
|
'-c', configFile.toString()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
processResources.dependsOn(compileTailwind)
|
|
|
|
|
2024-05-01 12:27:41 +00:00
|
|
|
tasks.register('paperDoll', Test) {
|
|
|
|
useJUnitPlatform {
|
|
|
|
includeTags "paperdoll"
|
|
|
|
}
|
|
|
|
jvmArgs = [ '-DrunPaperDoll=true', '--enable-preview' ]
|
|
|
|
}
|