From b7907ffb6ab73fb1302218f34fbfbff07d32a6df Mon Sep 17 00:00:00 2001
From: bclayton-usgs <bclayton@usgs.gov>
Date: Wed, 4 Mar 2020 12:59:18 -0700
Subject: [PATCH] add swagger

---
 build.gradle      | 16 +++++++++++-----
 gradle.properties |  1 +
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/build.gradle b/build.gradle
index c986793..6817b7d 100644
--- a/build.gradle
+++ b/build.gradle
@@ -17,6 +17,8 @@ apply from: project(":nshmp-lib").file("gradle/spotless.gradle")
 sourceCompatibility = JavaVersion.VERSION_11
 compileJava.options.encoding = "UTF-8"
 
+mainClassName = "gov.usgs.earthquake.nshmp.www.Application"
+
 repositories {
   jcenter()
 }
@@ -38,6 +40,10 @@ dependencies {
   runtimeOnly "io.micronaut:micronaut-runtime-osx"
   runtimeOnly "ch.qos.logback:logback-classic:${logbackVersion}"
 
+  // Swagger
+  annotationProcessor("io.micronaut.configuration:micronaut-openapi:${swaggerVersion}")
+  implementation("io.swagger.core.v3:swagger-annotations:${swaggerVersion}")
+
   // junit
   testAnnotationProcessor "io.micronaut:micronaut-inject-java:${mnVersion}"
   testImplementation platform("io.micronaut:micronaut-bom:${mnVersion}")
@@ -78,7 +84,6 @@ test {
   }
 
   filter {
-    excludeTestsMatching "gov.usgs.earthquake.nshmp.www.BasinTermControllerTests"
     excludeTestsMatching "gov.usgs.earthquake.nshmp.www.FaultSectionsControllerTests"
   }
 }
@@ -89,16 +94,17 @@ jacocoTestReport {
     html.enabled true
   }
 }
-
 check.dependsOn jacocoTestReport
 
-mainClassName = "gov.usgs.earthquake.nshmp.www.Application"
-
 shadowJar {
   mergeServiceFiles()
 }
 
-tasks.withType(JavaCompile){
+tasks.withType(JavaCompile) {
+  options.fork = true
+  options.forkOptions.jvmArgs << "-Dmicronaut.openapi.views.spec=" +
+      "swagger-ui.enabled=true," +
+      "swagger-ui.layout=BaseLayout"
   options.encoding = "UTF-8"
   options.compilerArgs.add("-parameters")
 }
diff --git a/gradle.properties b/gradle.properties
index a8d9a98..e6363b6 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -2,3 +2,4 @@ jacksonVersion = 2.9.0
 junitVersion = 5.5.2
 logbackVersion = 1.2.3
 mnVersion = 1.3.2
+swaggerVersion = 1.4.0
-- 
GitLab