Newer
Older
* In order to build and run services locally,
* one needs to include the following directorie(s) in the root project (they
* models/
* ak/
* 2007/
* wus/
* 2008/
* 2014/
* 2014b/
* 2018/
* ceus/
* 2008/
* 2014/
* 2018/
*
* ...with each 'year' directory being an alias to the corresponding
* git repository. One only needs to include the model they will run in the services.
*
* Then build the JAR file: ./gradlew assemble
*
* One can then specify the model to run in the services:
* java -jar build/libs/nshmp-haz-v2.jar -model=<MODEL>
*
* Where <MODEL> is one of the model enums in nshmp.www.Model
id "com.diffplug.gradle.spotless" version "${spotlessVersion}"
id "com.github.spotbugs" version "${spotbugsVersion}"
id "com.github.johnrengelman.shadow" version "${shadowVersion}"
id "com.star-zero.gradle.githook" version "${githooksVersion}"
id "net.ltgt.apt-eclipse" version "${aptEclipseVersion}"
apply from: "${projectDir}/gradle/ext.gradle"
apply from: "${projectDir}/gradle/jar.gradle"
apply from: "${projectDir}/gradle/javadoc.gradle"
apply from: "${projectDir}/gradle/tasks.gradle"
compileJava.options.encoding = "UTF-8"
mainClassName = "gov.usgs.earthquake.nshmp.www.Application"
implementation("https://code.usgs.gov/ghsc/nshmp/nshmp-lib.git", {
apply from: "${nshmpLibGradleDir}/git-hooks.gradle"
apply from: "${nshmpLibGradleDir}/spotbugs.gradle"
apply from: "${nshmpLibGradleDir}/spotless.gradle"
dependencies {
// AWS
implementation "com.amazonaws:aws-lambda-java-core:${awsLambdaCoreVersion}"
implementation "com.amazonaws:aws-java-sdk-lambda:${awsLambdaVersion}"
implementation "com.amazonaws:aws-java-sdk-s3:${awsS3Version}"
implementation "com.amazonaws:aws-java-sdk-ec2:${awsEc2Version}"
// Micronaut
annotationProcessor platform("io.micronaut:micronaut-bom:${mnVersion}")
annotationProcessor "io.micronaut:micronaut-inject-java"
annotationProcessor "io.micronaut:micronaut-validation"
implementation platform("io.micronaut:micronaut-bom:${mnVersion}")
implementation "io.micronaut:micronaut-http-client"
implementation "io.micronaut:micronaut-inject"
implementation "io.micronaut:micronaut-validation"
implementation "io.micronaut:micronaut-runtime"
implementation "io.micronaut:micronaut-http-server-netty"
implementation "com.fasterxml.jackson.module:jackson-module-parameter-names:${jacksonVersion}"
runtimeOnly "ch.qos.logback:logback-classic:${logbackVersion}"
// Swagger
annotationProcessor("io.micronaut.configuration:micronaut-openapi:${mnOpenAPIVersion}")
implementation("io.swagger.core.v3:swagger-annotations:${swaggerVersion}")
implementation("io.swagger.core.v3:swagger-models:${swaggerVersion}")
// junit
testAnnotationProcessor "io.micronaut:micronaut-inject-java:${mnVersion}"
testImplementation platform("io.micronaut:micronaut-bom:${mnVersion}")
testImplementation "org.junit.jupiter:junit-jupiter:${junitVersion}"
testImplementation "org.junit.jupiter:junit-jupiter-api"
testImplementation "io.micronaut.test:micronaut-test-junit5"
testImplementation "io.micronaut.test:micronaut-test-spock"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine"
}
jacocoTestReport {
reports {
xml.enabled true
classDirectories.from(files(classDirectories.files.collect {
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
options.compilerArgs.add("-parameters")
}
tasks.withType(JavaExec) {
jvmArgs('-noverify', '-XX:TieredStopAtLevel=1', '-Dcom.sun.management.jmxremote')
}
tasks.withType(com.github.spotbugs.snom.SpotBugsTask) {
html {
enabled true
stylesheet = 'fancy-hist.xsl'
}