69 lines
1.6 KiB
Groovy
69 lines
1.6 KiB
Groovy
plugins {
|
|
id 'com.jessebrault.ssg' version '0.4.0'
|
|
id 'distribution'
|
|
}
|
|
|
|
group = 'com.jessebrault'
|
|
version = '0.1.0'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven {
|
|
url 'https://archiva.jessebrault.com/repository/internal/'
|
|
|
|
credentials {
|
|
username System.getenv('JBARCHIVA_USERNAME')
|
|
password System.getenv('JBARCHIVA_PASSWORD')
|
|
}
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
server
|
|
}
|
|
|
|
sourceSets {
|
|
server
|
|
}
|
|
|
|
dependencies {
|
|
implementation 'org.apache.groovy:groovy:4.0.21'
|
|
|
|
serverImplementation 'org.eclipse.jetty:jetty-server:12.0.9'
|
|
serverImplementation 'info.picocli:picocli:4.7.6'
|
|
serverRuntimeOnly 'org.apache.logging.log4j:log4j-slf4j2-impl:2.23.1'
|
|
}
|
|
|
|
tasks.register('serverJar', Jar) {
|
|
group = 'build'
|
|
archiveBaseName = 'jb-ssg-site-server'
|
|
from sourceSets.server.java.classesDirectory
|
|
from sourceSets.server.resources.files
|
|
}
|
|
|
|
tasks.register('serverStartScripts', CreateStartScripts) {
|
|
applicationName = 'JbServer'
|
|
mainClass = 'com.jessebrault.site.JbServer'
|
|
classpath = files(configurations.serverRuntimeClasspath.files.collect {
|
|
java.nio.file.Path.of('lib', it.name).toFile()
|
|
})
|
|
classpath += files(tasks.named('serverJar', Jar).get().outputs.files.collect { it.name })
|
|
outputDir = file('build/tmp/serverStartScripts')
|
|
}
|
|
|
|
distributions {
|
|
server {
|
|
contents {
|
|
from(serverStartScripts) {
|
|
into 'bin'
|
|
}
|
|
from(serverJar) {
|
|
into 'lib'
|
|
}
|
|
from(configurations.serverRuntimeClasspath.files) {
|
|
into 'lib'
|
|
}
|
|
}
|
|
}
|
|
}
|